Revision: 57602
Updated Code
at July 3, 2012 22:51 by konteck
Updated Code
makeId = function (doc) {
var id = Math.floor(Math.random() * 900000) + 100000, that = this; // max(900000)/min(100000)
var key = "", i, v, that = this;
for (i = 0; i < 32; i++) {
v = Math.random() * 16 | 0;
if (i == 8 || i == 12 || i == 16 || i == 20) {
key += '-';
}
if (i == 12) {
key += '4';
} else {
key += (i == 16 ? (v & 3 | 8) : v).toString(16);
}
}
var res = db.users.findOne({$or: [
{id: id},
{key: key}
]});
if(res) {
makeId(doc);
} else {
doc.id = id;
doc.key = key;
db.users.save(doc);
print(id);
}
}
db.users.ensureIndex({id:1},{unique:true,sparse:true})
db.users.ensureIndex({key:1},{unique:true,sparse:true})
db.users.find().limit(10).forEach(function(doc){ makeId(doc); })
db.friends.find().limit(100000).forEach(function (doc) {
var user = db.users.findOne({mysql_id: doc.user2});
var friend = db.users.findOne({mysql_id: doc.user1});
if (user && friend) {
if (!(db.users.findOne({mysql_id: doc.user2, followers: friend._id}))) {
user.followers.push(friend._id);
db.users.save(user);
print(friend._id);
}
}
});
Revision: 57601
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at June 2, 2012 22:44 by konteck
Initial Code
makeId = function (doc) {
var id = Math.floor(Math.random() * 900000) + 100000, that = this; // max(900000)/min(100000)
var key = "", i, v, that = this;
for (i = 0; i < 32; i++) {
v = Math.random() * 16 | 0;
if (i == 8 || i == 12 || i == 16 || i == 20) {
key += '-';
}
if (i == 12) {
key += '4';
} else {
key += (i == 16 ? (v & 3 | 8) : v).toString(16);
}
}
var res = db.users.findOne({$or: [
{id: id},
{key: key}
]});
if(res) {
makeId(doc);
} else {
doc.id = id;
doc.key = key;
db.users.save(doc);
print(id);
}
}
db.users.ensureIndex({id:1},{unique:true,sparse:true})
db.users.ensureIndex({key:1},{unique:true,sparse:true})
db.users.find().limit(10).forEach(function(doc){ makeId(doc); })
Initial URL
Initial Description
MongoDB
Initial Title
MongoDB Shell Commands
Initial Tags
Initial Language
JavaScript