Skip to content

Commit 88cee3f

Browse files
committed
Made all update events depend on user cration date except add person events
1 parent ebd67ec commit 88cee3f

File tree

12 files changed

+54
-16
lines changed

12 files changed

+54
-16
lines changed

src/main/java/ldbc/socialnet/dbgen/generator/CommentGenerator.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,7 @@ private void setLikes( Random randomNumLikes, Random randomDate, Message message
126126
if( date <= dateGen.getEndDateTime() ) {
127127
likes[i] = new Like();
128128
likes[i].user = friendList[startIndex + i].getFriendAcc();
129+
likes[i].userCreationDate = friendList[startIndex+i].fromCreationDate;
129130
likes[i].messageId = message.getMessageId();
130131
likes[i].date = date;
131132
likes[i].type = 1;
@@ -153,6 +154,7 @@ private void setLikes( Random randomNumLikes, Random randomDate, Message message
153154
if( date <= dateGen.getEndDateTime() ) {
154155
likes[i] = new Like();
155156
likes[i].user = groupMembers[startIndex + i].getUserId();
157+
likes[i].userCreationDate = groupMembers[startIndex+i].userCreationDate;
156158
likes[i].messageId = message.getMessageId();
157159
likes[i].date = date;
158160
likes[i].type = 1;
@@ -232,6 +234,7 @@ public Comment createComment(RandomGeneratorFarm randomFarm, long commentId, Pos
232234
textSize,
233235
creationDate,
234236
friend.getFriendAcc(),
237+
friend.fromCreationDate,
235238
post.getGroupId(),
236239
tags,
237240
ipAddDic.getIP(randomFarm.get(RandomGeneratorFarm.Aspect.IP), randomFarm.get(RandomGeneratorFarm.Aspect.DIFF_IP), randomFarm.get(RandomGeneratorFarm.Aspect.DIFF_IP_FOR_TRAVELER),friend.getSourceIp(), friend.isFrequentChange(), creationDate),
@@ -312,6 +315,7 @@ public Comment createComment(RandomGeneratorFarm randomFarm, long commentId, Pos
312315
textSize,
313316
creationDate,
314317
membership.getUserId(),
318+
membership.userCreationDate,
315319
post.getGroupId(),
316320
tags,
317321
ipAddDic.getIP(randomFarm.get(RandomGeneratorFarm.Aspect.IP), randomFarm.get(RandomGeneratorFarm.Aspect.DIFF_IP), randomFarm.get(RandomGeneratorFarm.Aspect.DIFF_IP_FOR_TRAVELER), membership.getIP(), membership.isFrequentChange(), creationDate),

src/main/java/ldbc/socialnet/dbgen/generator/PhotoGenerator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ public Photo generatePhoto(ReducedUserProfile user, Group album,
123123

124124
long date = album.getCreatedDate()+deltaTime+1000*(idxInAlbum+1);
125125
if( date > dateGenerator.getEndDateTime() ) return null;
126-
Photo photo = new Photo(SN.composeId(photoId,date),"photo"+SN.composeId(photoId,date)+".jpg",0,date,album.getModeratorId(),album.getGroupId(),tags,null,new String(""),(byte)-1,locationId,locationName,latt,longt);
126+
Photo photo = new Photo(SN.composeId(photoId,date),"photo"+SN.composeId(photoId,date)+".jpg",0,date,album.getModeratorId(), user.getCreationDate(),album.getGroupId(),tags,null,new String(""),(byte)-1,locationId,locationName,latt,longt);
127127
if( randomFarm.get(RandomGeneratorFarm.Aspect.NUM_LIKE).nextDouble() <= 0.1 ) {
128128
setLikes(randomFarm.get(RandomGeneratorFarm.Aspect.NUM_LIKE),randomFarm.get(RandomGeneratorFarm.Aspect.DATE),photo,album);
129129
}

src/main/java/ldbc/socialnet/dbgen/generator/PostGenerator.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,7 @@ private void setLikes( Random randomNumLikes, Random randomDate, Message message
142142
if( date <= dateGen.getEndDateTime() ) {
143143
likes[i] = new Like();
144144
likes[i].user = friendList[startIndex + i].getFriendAcc();
145+
likes[i].userCreationDate = friendList[startIndex+i].fromCreationDate;
145146
likes[i].messageId = message.getMessageId();
146147
likes[i].date = date;
147148
likes[i].type = 0;
@@ -169,6 +170,7 @@ private void setLikes( Random randomNumLikes, Random randomDate, Message message
169170
if( date <= dateGen.getEndDateTime() ) {
170171
likes[i] = new Like();
171172
likes[i].user = groupMembers[startIndex + i].getUserId();
173+
likes[i].userCreationDate = groupMembers[startIndex+i].userCreationDate;
172174
likes[i].messageId = message.getMessageId();
173175
likes[i].date = date;
174176
likes[i].type = 0;
@@ -215,6 +217,7 @@ public Vector<Post> createPosts(RandomGeneratorFarm randomFarm, ReducedUserProfi
215217
textSize,
216218
postInfo.date,
217219
user.getAccountId(),
220+
user.getCreationDate(),
218221
user.getForumWallId(),
219222
postInfo.tags,
220223
ipAddressDic.getIP(randomFarm.get(RandomGeneratorFarm.Aspect.IP), randomFarm.get(RandomGeneratorFarm.Aspect.DIFF_IP), randomFarm.get(RandomGeneratorFarm.Aspect.DIFF_IP_FOR_TRAVELER),user.getIpAddress(), user.isFrequentChange(), postInfo.date),
@@ -269,6 +272,7 @@ public Vector<Post> createPosts( RandomGeneratorFarm randomFarm, Group group, lo
269272
textSize,
270273
postInfo.date,
271274
memberShip.getUserId(),
275+
memberShip.userCreationDate,
272276
group.getGroupId(),
273277
postInfo.tags,
274278
ipAddressDic.getIP(randomFarm.get(RandomGeneratorFarm.Aspect.IP), randomFarm.get(RandomGeneratorFarm.Aspect.DIFF_IP), randomFarm.get(RandomGeneratorFarm.Aspect.DIFF_IP_FOR_TRAVELER),memberShip.getIP(), memberShip.isFrequentChange(), postInfo.date),

src/main/java/ldbc/socialnet/dbgen/generator/ScalableGenerator.java

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -999,6 +999,18 @@ private Group generateWall(UserInfo userInfo) {
999999
index++;
10001000
}
10011001
group.setTags(tags);
1002+
Friend[] friends = userInfo.user.getFriendList();
1003+
group.initAllMemberships(friends.length);
1004+
for (int i = 0; i < friends.length; i ++){
1005+
if (friends[i] != null && friends[i].getCreatedTime() != -1){
1006+
GroupMemberShip membership = new GroupMemberShip();
1007+
membership.setGroupId(group.getGroupId());
1008+
membership.setJoinDate(friends[i].getCreatedTime()+deltaTime);
1009+
membership.setUserId(friends[i].getFriendAcc());
1010+
membership.userCreationDate = userInfo.user.getCreationDate();
1011+
group.addMember(membership);
1012+
}
1013+
}
10021014
dataExporter.export(group,userInfo.user.getCreationDate());
10031015
return group;
10041016
}
@@ -1042,7 +1054,7 @@ private void generatePosts(PostGenerator postGenerator, ReducedUserProfile user,
10421054
stats.minPostCreationDate = strCreationDate;
10431055
}
10441056
}
1045-
dataExporter.export(post,group.getCreatedDate());
1057+
dataExporter.export(post,post.getAuthorCreationDate());
10461058
// Generate comments
10471059
int numComment = randomFarm.get(RandomGeneratorFarm.Aspect.NUM_COMMENT).nextInt(maxNumComments+1);
10481060
ArrayList<Message> replyCandidates = new ArrayList<Message>();
@@ -1072,7 +1084,7 @@ private void generatePosts(PostGenerator postGenerator, ReducedUserProfile user,
10721084
postCount = postsPerCountry.containsKey(locationID) ? postsPerCountry.get(locationID) : 0;
10731085
postsPerCountry.put(locationID, postCount+1);
10741086
stats.countries.add(countryName);
1075-
dataExporter.export(comment,post.getCreationDate());
1087+
dataExporter.export(comment,comment.getAuthorCreationDate());
10761088
if( comment.getTextSize() > 10 ) replyCandidates.add(comment);
10771089
postId++;
10781090
}
@@ -1110,7 +1122,7 @@ private void generatePhotos(ReducedUserProfile user, UserExtraInfo extraInfo){
11101122
int postCount = postsPerCountry.containsKey(locationID) ? postsPerCountry.get(locationID) : 0;
11111123
postsPerCountry.put(locationID, postCount+1);
11121124
stats.countries.add(countryName);
1113-
dataExporter.export(photo,album.getCreatedDate());
1125+
dataExporter.export(photo,photo.getAuthorCreationDate());
11141126

11151127
if (photo.getTags() != null) {
11161128
for (Integer t: photo.getTags()){
@@ -1158,6 +1170,7 @@ private void createGroupForUser(ReducedUserProfile user,
11581170
potentialMemberAcc, group.getCreatedDate(),
11591171
firstLevelFriends[friendIdx]);
11601172
if( memberShip != null ) {
1173+
memberShip.userCreationDate = firstLevelFriends[friendIdx].fromCreationDate;
11611174
memberShip.setGroupId(group.getGroupId());
11621175
group.addMember(memberShip);
11631176
}
@@ -1177,6 +1190,7 @@ private void createGroupForUser(ReducedUserProfile user,
11771190
potentialMemberAcc, group.getCreatedDate(),
11781191
secondLevelFriends.get(friendIdx));
11791192
if( memberShip != null ) {
1193+
memberShip.userCreationDate = secondLevelFriends.get(friendIdx).fromCreationDate;
11801194
memberShip.setGroupId(group.getGroupId());
11811195
group.addMember(memberShip);
11821196
}
@@ -1196,6 +1210,7 @@ private void createGroupForUser(ReducedUserProfile user,
11961210
potentialMemberAcc, group.getCreatedDate(),
11971211
reducedUserProfiles[friendIdx]);
11981212
if( memberShip != null ) {
1213+
memberShip.userCreationDate = reducedUserProfiles[friendIdx].getCreationDate();
11991214
memberShip.setGroupId(group.getGroupId());
12001215
group.addMember(memberShip);
12011216
}
@@ -1233,7 +1248,7 @@ private void generatePostForGroup(PostGenerator postGenerator, Group group) {
12331248
int postCount = postsPerCountry.containsKey(locationID) ? postsPerCountry.get(locationID) : 0;
12341249
postsPerCountry.put(locationID, postCount+1);
12351250
stats.countries.add(countryName);
1236-
dataExporter.export(groupPost,group.getCreatedDate());
1251+
dataExporter.export(groupPost,groupPost.getAuthorCreationDate());
12371252

12381253
int numComment = randomFarm.get(RandomGeneratorFarm.Aspect.NUM_COMMENT).nextInt(maxNumComments+1);
12391254
ArrayList<Message> replyCandidates = new ArrayList<Message>();
@@ -1253,7 +1268,7 @@ private void generatePostForGroup(PostGenerator postGenerator, Group group) {
12531268
postCount = postsPerCountry.containsKey(locationID) ? postsPerCountry.get(locationID) : 0;
12541269
postsPerCountry.put(locationID, postCount+1);
12551270
stats.countries.add(countryName);
1256-
dataExporter.export(comment,groupPost.getCreationDate());
1271+
dataExporter.export(comment,comment.getAuthorCreationDate());
12571272
if( comment.getTextSize() > 10 ) replyCandidates.add(comment);
12581273

12591274
if (comment.getTags() != null) {

src/main/java/ldbc/socialnet/dbgen/objects/Comment.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ public Comment( long commentId,
4949
int textSize,
5050
long creationDate,
5151
long authorId,
52+
long authorCreationDate,
5253
long groupId,
5354
TreeSet<Integer> tags,
5455
IP ipAddress,
@@ -59,7 +60,7 @@ public Comment( long commentId,
5960
long replyOf
6061
) {
6162

62-
super(commentId, content, textSize, creationDate, authorId, groupId, tags, ipAddress, userAgent, browserIdx, locationId);
63+
super(commentId, content, textSize, creationDate, authorId, authorCreationDate, groupId, tags, ipAddress, userAgent, browserIdx, locationId);
6364
this.postId = postId;
6465
this.replyOf = replyOf;
6566
}

src/main/java/ldbc/socialnet/dbgen/objects/Friend.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ public class Friend implements Serializable{
4646
long from;
4747
long to;
4848
public long dependantDate;
49+
public long fromCreationDate;
4950
long createdTime; //approved Time
5051
long requestTime;
5152
long declinedTime;
@@ -80,6 +81,7 @@ public void readFields(DataInput arg0) throws IOException{
8081
from = arg0.readLong();
8182
to = arg0.readLong();
8283
dependantDate = arg0.readLong();
84+
fromCreationDate = arg0.readLong();
8385
createdTime = arg0.readLong();
8486
requestTime = arg0.readLong();
8587
declinedTime = arg0.readLong();
@@ -99,6 +101,7 @@ public void write(DataOutput arg0) throws IOException {
99101
arg0.writeLong(from);
100102
arg0.writeLong(to);
101103
arg0.writeLong(dependantDate);
104+
arg0.writeLong(fromCreationDate);
102105
arg0.writeLong(createdTime);
103106
arg0.writeLong(requestTime);
104107
arg0.writeLong(declinedTime);
@@ -119,6 +122,7 @@ public Friend(ReducedUserProfile from, ReducedUserProfile to, long _requestedTim
119122
this.from = from.getAccountId();
120123
this.to = to.getAccountId();
121124
this.dependantDate = Math.max(from.getCreationDate(), to.getCreationDate());
125+
this.fromCreationDate = from.getCreationDate();
122126
this.requestTime = _requestedTime;
123127
this.declinedTime = _declinedTime;
124128
this.createdTime = _createdTime;

src/main/java/ldbc/socialnet/dbgen/objects/GroupMemberShip.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ public class GroupMemberShip {
4040
long groupId;
4141
long userId;
4242
long joinDate;
43+
public long userCreationDate;
4344
IP ip;
4445
byte browserIdx;
4546
byte agentIdx;

src/main/java/ldbc/socialnet/dbgen/objects/Like.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343
public class Like {
4444

4545
public long user;
46+
public long userCreationDate;
4647
public long messageId;
4748
public long date;
4849
public int type;

src/main/java/ldbc/socialnet/dbgen/objects/Message.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ abstract public class Message {
4545
private int textSize; /**< @brief The size of the content. Required in order to be able to generate posts without text but with size.*/
4646
private long creationDate; /**< @brief The creation date of the post.*/
4747
private long authorId; /**< @brief The author identifier of the post.*/
48+
private long authorCreationDate; /**< @brief The creation date of the author.*/
4849
private long groupId; /**< @brief The group identifier where the post belongs to.*/
4950
private TreeSet<Integer> tags; /**< @brief The set of tags related to the post.*/
5051
private IP ipAddress; /**< @brief The ip from where the post was created.*/
@@ -62,6 +63,7 @@ public Message(long messageId,
6263
int textSize,
6364
long creationDate,
6465
long authorId,
66+
long authorCreationDate,
6567
long groupId,
6668
TreeSet<Integer> tags,
6769
IP ipAddress,
@@ -74,6 +76,7 @@ public Message(long messageId,
7476
this.textSize = textSize;
7577
this.creationDate = creationDate;
7678
this.authorId = authorId;
79+
this.authorCreationDate = authorCreationDate;
7780
this.groupId = groupId;
7881
this.tags = tags;
7982
this.ipAddress = ipAddress;
@@ -110,6 +113,9 @@ public void setCreationDate(long creationDate) {
110113
public long getAuthorId() {
111114
return this.authorId;
112115
}
116+
public long getAuthorCreationDate() {
117+
return this.authorCreationDate;
118+
}
113119
public void setAuthorId(long authorId) {
114120
this.authorId = authorId;
115121
}

src/main/java/ldbc/socialnet/dbgen/objects/Photo.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ public Photo(long messageId,
6363
int textSize,
6464
long creationDate,
6565
long authorId,
66+
long authorCreationDate,
6667
long groupId,
6768
TreeSet<Integer> tags,
6869
IP ipAddress,
@@ -73,7 +74,7 @@ public Photo(long messageId,
7374
double latt,
7475
double longt
7576
) {
76-
super(messageId, content, textSize, creationDate, authorId, groupId, tags, ipAddress, userAgent, browserIdx, locationId);
77+
super(messageId, content, textSize, creationDate, authorId,authorCreationDate, groupId, tags, ipAddress, userAgent, browserIdx, locationId);
7778
this.locationName = locationName;
7879
this.latt = latt;
7980
this.longt = longt;

0 commit comments

Comments
 (0)