PMXBOT Log file Viewer

Help | Karma | Search:

#mongodb logs for Thursday the 24th of July, 2014

(Back to #mongodb overview) (Back to channel listing) (Animate logs)
[00:01:53] <huleo> Err, the question is, how to use it outside of just "find" operation? I'll keep looking, but google isn't helpful.
[00:02:08] <huleo> again, update just one document in nested array
[00:02:14] <huleo> specifiied
[00:05:02] <joannac> ?
[00:08:44] <joannac> huleo: http://pastebin.com/JPCST82y
[00:08:56] <huleo> ok, { visits: [ { who: String, noOfVisits: 41 } ] }
[00:09:25] <huleo> one sec
[00:09:28] <huleo> let me digest this
[00:17:03] <huleo> I have to thank you very much
[00:17:05] <huleo> it works
[07:22:19] <haridas> Why the fs.chunks fs.files entries are not getting removed when we doing a delete on a document in another collection which stores big files ?
[07:23:17] <kali> haridas: implementing this kind of high level behaviour is up to the application
[07:38:32] <haridas> Kali. Ok.
[08:27:49] <Faisal> guys
[09:55:31] <boombaloo> guys, we are running some bloody old single node mongo (1.8.1 !!) and want to move to 2.6 replica set...
[09:55:53] <boombaloo> can I get some advice how to approach the migration ?
[09:56:05] <boombaloo> we dont care about downtime...
[09:57:37] <boombaloo> if i dump the data, then stop old mongo, purge the data dir, upgrade and import, should I expect anything bad ?
[10:00:01] <juancarlosfarah> boombaloo: I don't think it would work that easily. In the docs it says "To upgrade an existing MongoDB deployment to 2.6, you must be running 2.4. If you’re running a version of MongoDB before 2.4, you must upgrade to 2.4 before upgrading to 2.6. See Upgrade MongoDB to 2.4 for the procedure to upgrade from 2.2 to 2.4."
[10:00:29] <juancarlosfarah> boombaloo: From this page: http://docs.mongodb.org/manual/release-notes/2.6-upgrade/
[10:00:32] <boombaloo> juancarlosfarah: but those are the upgrades when you have data in place...
[10:01:08] <boombaloo> what I asked about is : dump existing data, stop 1.8 - PURGE DATA DIRECTORY - upgrade to 2.6, import old data
[10:01:08] <juancarlosfarah> boombaloo: I believe so, yes.
[10:02:02] <boombaloo> essentially my question was. if I dump the data from 1.8 using 1.8 mongodump , will 2.6 mongo have any problems importing dumped 1.8 data ?
[10:02:43] <juancarlosfarah> boombaloo: There are changes in the authorization model, if you have users. I don't know about any previous changes between 1.8 and 2.2 that may also affect you.
[10:03:02] <boombaloo> I see...that's what I was afraid of....
[10:03:22] <boombaloo> what I can do I guess is to do gradual update....1.8 -> 2.2 -> 2.4 -> 2.6 /
[10:03:44] <boombaloo> I hate inheriting this stuff when I do contracting for companies :-)
[10:04:31] <juancarlosfarah> boombaloo: Yea. Unless anyone tells you that you can skip some versions, I would do a gradual update and be safe.
[10:05:35] <boombaloo> juancarlosfarah: damn :-) smells like quite some work...i thought i was gonna be smart :-)
[10:05:44] <boombaloo> btw is the user accounts the only "problem"?
[10:07:41] <juancarlosfarah> boombaloo: boombaloo: I'm looking at the docs. Looks like from 1.8 to 2.2 there's nothing to worry about. You can just change the binaries.
[10:07:46] <juancarlosfarah> boombaloo: See here: http://docs.mongodb.org/manual/release-notes/2.2/
[10:08:04] <boombaloo> MongoDB 2.0 data files are compatible with 2.2
[10:08:11] <boombaloo> we're talking 1.8 here :-)
[10:08:17] <boombaloo> ah
[10:08:21] <boombaloo> youre right
[10:08:24] <boombaloo> reading on
[10:08:25] <boombaloo> sorry
[10:10:12] <juancarlosfarah> boombaloo: Yea, then from 2.2 to 2.4 there are some considerations for the system.users (http://docs.mongodb.org/manual/release-notes/2.4-upgrade/)
[10:12:09] <juancarlosfarah> boombaloo: Then the same from 2.4 to 2.6, though there's a nice procedure you can follow to upgrade the user authorisation data (http://docs.mongodb.org/manual/release-notes/2.6-upgrade-authorization/#upgrade-authorization-model)
[10:12:47] <juancarlosfarah> boombaloo: So it's not that bad. And if you're not using auth, you could probably try to take some shortcuts.
[10:13:08] <boombaloo> i dont actually think we are using auth AT ALL
[10:13:17] <boombaloo> i cant see any mention of it in mongoid config
[10:15:31] <juancarlosfarah> boombaloo: Check what you have in the system.users collection.
[10:18:13] <boombaloo> juancarlosfarah: there is no such collection in any of our dbs :-)
[10:21:30] <juancarlosfarah> boombaloo: Then you can try and see what happens if you do the upgrade directly!
[10:21:38] <boombaloo> :-)
[10:21:53] <boombaloo> I'll do the dump before to make sure
[10:22:05] <boombaloo> by directly you mean 1.8 -> 2.6 ?
[10:25:45] <juancarlosfarah> boombaloo: Yes, do the dump. Definitely. I would still do the update gradually. 1.8 -> 2.2 then to 2.4 then 2.6, but without modifying anything.
[10:26:19] <juancarlosfarah> boombaloo: But I guess there is no harm in trying to do the upgrade from 1.8 -> 2.6 and see what happens. As long as you back up.
[10:26:39] <boombaloo> yeah thats what im thinking
[10:35:45] <boombaloo> mm anyone has seen this before ? http://pastebin.com/LA0CvnzA
[10:36:03] <boombaloo> look like i cant connect to mongo using mongo cmd line client
[10:36:07] <boombaloo> not good
[10:36:09] <boombaloo> :-)
[10:44:11] <Nodex> what's your listen line set to?
[10:44:17] <Nodex> and do you have a firewall blocking it
[11:08:59] <boombaloo> Nodex: well on the pastebin its visible that it should be listening on all interfaces
[11:09:12] <boombaloo> but it somewhow isnt listening on localhost...
[11:11:17] <Nodex> can you please pastebin your LISTEN line
[11:13:33] <boombaloo> MONGODB_IP="0.0.0.0"
[11:13:41] <boombaloo> that means all IPs
[11:13:46] <boombaloo> including 127.... ?
[11:13:48] <boombaloo> right
[11:16:21] <Nodex> comment it out to listen on ALL interfaces. it's right there in the config file
[11:24:32] <boombaloo> ?? Nodex
[11:24:41] <boombaloo> there are no comments in the config file
[11:24:53] <boombaloo> what I copy pasted is the UNCOMMENTED config directive
[11:29:15] <r1pp3rj4ck> i reported this bug in Doctrine https://github.com/doctrine/mongodb-odm/issues/919
[11:29:27] <r1pp3rj4ck> but now i'm not sure it's really in the doctrine and not the official php driver
[11:31:40] <r1pp3rj4ck> i followed the code until a MongoDB::command() call
[11:31:59] <r1pp3rj4ck> which receives a $data and an $options parameters, $options being an empty array in this case
[11:32:11] <r1pp3rj4ck> and $data having an aggregate and a pipeline arrays
[11:32:34] <r1pp3rj4ck> which is the same one as i build in the example code on the bugreport
[11:32:49] <r1pp3rj4ck> can you confirm it's a bug in the driver?
[11:35:32] <r1pp3rj4ck> i'm talking about this line here: https://github.com/doctrine/mongodb/blob/master/lib/Doctrine/MongoDB/Database.php#L106
[11:36:40] <Derick> your snippet in https://github.com/doctrine/mongodb-odm/issues/919 shows javascript though?
[11:46:16] <r1pp3rj4ck> Derick, what do you mean?
[11:54:22] <Nodex> boombaloo : there are comments in the original config file, I can't comment on your config file
[11:56:24] <Nodex> r1pp3rj4ck : at the point of line's 12 and 13 mongodb hasn't even been called yet
[11:58:27] <r1pp3rj4ck> Nodex, L13 calls mongodb first, L15 calls it once more
[11:58:44] <Nodex> theh you need to dump $builder and see what's in there
[11:58:46] <r1pp3rj4ck> if the first call is the command with the aggregation, then it's ok
[11:59:43] <r1pp3rj4ck> if there is a call for the same collection before (the count), it doesn't
[12:00:23] <Nodex> so db.foo.runComand(...).count() works ok ?
[12:00:36] <r1pp3rj4ck> no, they should be two separate queries
[12:00:50] <r1pp3rj4ck> there is a count, and then there is an aggregation
[12:00:52] <Nodex> then how can that be down to the driver?
[12:01:06] <r1pp3rj4ck> not sure
[12:01:08] <Nodex> seems doctrine is mixing it's vars somewhere
[12:01:19] <Nodex> and or not unsetting something
[12:01:55] <r1pp3rj4ck> i tracked the process until this line in doctrine https://github.com/doctrine/mongodb/blob/master/lib/Doctrine/MongoDB/Database.php#L106
[12:02:03] <Nodex> I would look in the $manager object
[12:02:21] <r1pp3rj4ck> which calls MongoDB::command()
[12:02:35] <r1pp3rj4ck> tracked it with xdebug and the $data is correct here
[12:02:55] <r1pp3rj4ck> that's why i think it might be in the driver
[12:03:56] <Nodex> $this->createQueryBuilder(); <--- is that extended anywhere?
[12:04:27] <Nodex> if so does it write to the same object as the $manager ?
[12:05:49] <r1pp3rj4ck> createQueryBuilder is on the standard DocumentRepository
[12:06:03] <r1pp3rj4ck> forgot to mark that in the snippet though
[12:06:39] <r1pp3rj4ck> updated
[12:07:12] <Nodex> I personally don't know doctrine but that method seems to be the one called before the aggregation so it stands to reason that if it's being manipulated then it would be (for lack of a better word) concatting your function calls
[12:08:41] <r1pp3rj4ck> hmm it makes sense
[12:08:55] <r1pp3rj4ck> can i log the actual queries in mongo?
[12:09:15] <Nodex> you can turn on profiling and tail the log, can't reember if it logs the raw query or not
[12:09:21] <Nodex> remember *
[12:13:30] <r1pp3rj4ck> added profile = 1 to my config but queries aren't logged :/
[12:14:09] <Nodex> did you restart?
[12:14:14] <joannac> check the system.profile collection
[12:14:43] <r1pp3rj4ck> yup
[12:14:56] <Nodex> try adding slowms=1
[12:15:10] <r1pp3rj4ck> joannac, thx
[12:15:25] <r1pp3rj4ck> Nodex, thx
[12:15:43] <Nodex> http://docs.mongodb.org/manual/reference/method/db.setProfilingLevel/ <---- set to 2
[12:22:26] <r1pp3rj4ck> Nodex, thx
[12:29:44] <Randomaniac> Is there an easy way to pass in a function that uses other functions into a where query, without having to copy all of their bodies inside it?
[13:12:45] <bangbang> g'mornin folks!
[13:13:03] <bangbang> Question: Does MongoDB go to sleep, by default?
[13:14:13] <bangbang> or idle?
[13:15:08] <Gargoyle> bangbang: Sleep or idle? What do you mean?
[13:15:24] <bangbang> We are new to mongo and my developers keep experiencing some issues with getting data... If they wait for say, 30 minutes, then try to get the data, it'll throw an error
[13:15:36] <bangbang> if they refresh the page, the data appears as it should.
[13:16:03] <bangbang> The error is: Error: Response for getList SHOULD be an array and not an object or something else
[13:16:13] <Gargoyle> What error? and what do you mean by wait 30 mins?
[13:16:49] <bangbang> Gargoyle: What I mean by "wait"... is if the developer does nothing for a period of time, then tries to hit the database, the error will appear
[13:17:06] <bangbang> If they refresh the page after they get the error, the data appears as normal.
[13:17:37] <bangbang> I'm just trying to narrow down the possible problems, because the mongo logs aren't telling me anything.
[13:18:30] <Gargoyle> bangbang: MongoDB doesn't have pages to refresh! So perhaps you would like to take a few mins and compose a question that someone will have a chance of answering. (Hint, programming language, server & driver versions, example code and actual error messages - Use a pastebin or gist)
[13:18:46] <Nodex> haha
[13:18:59] <Gargoyle> Hey Nodex, Long time no see!
[13:19:18] <bangbang> :P
[13:19:45] <Nodex> Long time, how goes it?
[13:20:35] <bangbang> Gargoyle: I appreciate the guidance in trying to help me form my question. Let me try and come up with something more descriptive.
[13:20:59] <Gargoyle> All Good. Got married, got a new role in company - bit of a sideways move not a promotion, but better chances of one, busy busy....
[13:21:03] <Gargoyle> how about you?
[13:21:41] <rspijker> bangbang: mongo doesn’t go to sleep, but cursors do expire after about 10 mins. So I’m guessing your developers are holding on to one of those inadvertently…
[13:21:44] <Nodex> excellent, congrats
[13:22:12] <bangbang> rspijker: Thank you for answering my original question. I will check with them really quick.
[13:22:22] <Nodex> and me, not a lot, same s*** different day haha
[13:26:37] <bangbang> rspijker: We're about to test this by adding the noTimeout option to our .find()
[14:50:47] <r1pp3rj4ck> Nodex, joannac turns out the problem was elsewhere in the code, and also there is nothing wrong with the actual query
[14:51:01] <r1pp3rj4ck> it just appears wrong in the profiler in this case
[14:51:24] <r1pp3rj4ck> so i guess i'll modify my bugreport and it's completely Doctrine's fault, Mongo works fine, so is the PHP driver :)
[14:51:39] <Derick> whoop! :)
[14:51:47] <Derick> that means jmikola gets to fix it and not me :-)
[14:52:48] <r1pp3rj4ck> :D
[15:03:28] <r1pp3rj4ck> i'll try to fix it if i'll have time
[16:13:54] <d-rock> I've got an interesting one here. mongodb-org version 2.6.3. I've got "hidden" collections. The collections are there, work fine for query/insert, show up in stats, etc, but if I issue a "show collections" from the mongo shell they don't show up in the list.
[16:21:10] <rspijker> d-rock: but they do show in db.getCollectionNames() ?
[16:22:43] <d-rock> Good question, let me check
[16:22:58] <d-rock> Nope
[17:34:06] <gaspyr> hi
[17:34:37] <gaspyr> i've a question related to $ and $elemMatch
[17:34:44] <gaspyr> can anyone answer me
[19:17:18] <rakkaus__> hi guys! can some one explain me how to check is user or db exist from command line?
[19:33:23] <obiwahn> hi
[19:33:57] <obiwahn> i am doing some mongodb university course and i am stuck with one of the homeworks
[19:34:13] <obiwahn> i can verify that my query yiels the wrong result
[19:34:20] <obiwahn> but i do not see why
[19:34:22] <obiwahn> http://paste.debian.net/111480/
[19:35:28] <saml> CA and NY right?
[19:35:59] <ddod> Can anyone help me figure out how I would query for entries added after a specific entry? Is the only way to do this by looking up when the entry was added and do a time-based query afterward?
[19:36:21] <obiwahn> yes
[19:36:24] <ddod> or can I do a starting from _id sort of thing?
[19:36:32] <saml> what's the answer you're getting?
[19:36:43] <saml> i think something's wrong
[19:36:46] <saml> you need a lot more $
[19:38:27] <obiwahn> for ct,nj
[19:38:28] <redsand> ddod: try $natural
[19:38:30] <obiwahn> i get
[19:38:31] <obiwahn> "number" : 22,
[19:38:33] <obiwahn> "totalpop" : 800126
[19:38:53] <saml> what's average population of cities?
[19:39:02] <obiwahn> 36369
[19:39:35] <saml> i mean, you want sum of population of all cities in NY and CA that have population greater than 25000?
[19:39:43] <obiwahn> oh i could use the average operator instead of number and total
[19:39:54] <ddod> redsand: thanks! could you give me a clue as to how I'd use this if I had the _id of the entry and wanted all entries since then?
[19:40:07] <obiwahn> but it should be about the same
[19:40:23] <saml> db.cities.find({state: {$in:['NY','CA']}, pop:{$gt:25000}})
[19:40:32] <saml> then you iterate and sum
[19:40:54] <saml> db.cities.find({state: {$in:['NY','CA']}, pop:{$gt:25000}}).forEach(function(x) { sum += x.pop;})
[19:42:29] <obiwahn> uhm not really
[19:42:30] <redsand> ddod: find the offset of your entry and then skip?
[19:46:07] <obiwahn> saml: i want to do it woth the aggregation framework as it is intended
[19:46:13] <obiwahn> with
[19:46:29] <saml> db.cities.aggregate([{$match:{state:{$in:['NY','CA']}, pop:{$gt:25000}}}, {$group:{_id:'NY CA > 25000 pop', n:{$sum:'$pop'}}}])
[19:46:29] <saml> { "_id" : "NY CA > 25000 pop", "n" : 411024 }
[19:46:34] <saml> does that work
[19:48:50] <obiwahn> it is alomst the query i have posted
[19:49:14] <obiwahn> is misses the number of cities that would be neccessary to calculate the average
[19:49:27] <obiwahn> but you can switch the sum for avg
[19:49:39] <obiwahn> but then it gives still th wrng result
[19:50:10] <obiwahn> Please calculate the average population of cities in California (abbreviation CA) and New York (NY) (taken together) with populations over 25,000.
[19:50:39] <obiwahn> does that somehow mean that a city name is only used once?
[19:52:04] <obiwahn> like when a city is in 2 states that it still counts as one city when calculating the average?!
[19:57:25] <rakkaus__> Hi guys! I am looking for default admin ( root) credentials
[19:57:47] <rakkaus__> I have installed mongodb with enabled auth
[19:58:02] <rakkaus__> how can I change admin user credentials?
[20:10:41] <s2013> anyone has an edxample of how a chat program would be designed? do you save each message as a separate document?
[20:12:15] <s2013> https://gist.github.com/ss2k/fe3b9571d2c527b48578 which would be preferable?
[20:13:57] <obiwahn> the first
[20:14:16] <obiwahn> you don't want to unwind the array
[20:15:45] <s2013> what do you mean by unwind the array
[20:17:15] <brammator> how do I get db object from URI with pymongo lib?
[20:19:42] <obiwahn> uri_
[20:19:45] <obiwahn> ?
[20:20:20] <brammator> obiwahn well, "mongodb://user:pass@host:port/db" -- like this
[20:20:24] <obiwahn> _id?
[20:21:45] <obiwahn> http://api.mongodb.org/python/current/examples/authentication.html
[20:21:51] <obiwahn> not too hard to find
[20:23:43] <s2013> obiwahn, ?
[20:24:34] <brammator> obiwahn it's client. not db. I've seen Java examples with db and even collection URIs.
[20:25:05] <obiwahn> brammator: really try it
[20:25:22] <obiwahn> if it does not not work then write some function yourself
[20:25:26] <obiwahn> it is not too hard
[20:26:11] <obiwahn> s2013: when you want to look at some message at a certain date
[20:26:30] <obiwahn> then it is really the easiest to have them directly accessable
[20:26:41] <s2013> i see
[20:26:52] <obiwahn> you will have smaller documents
[20:27:06] <s2013> even if i have 100 million records it wont be problem to parse through?
[20:27:39] <obiwahn> i guess that would be easier than having 1 document containing so many
[20:27:59] <obiwahn> you can then use indexes to speed up the lookup
[20:30:11] <rakkaus__> Guys, please help me, is there a default root / admin / super user? and how to change pwd ? I've installed mongo with auth = true, but I ca't do anything!
[20:30:39] <rakkaus__> I sure that there is some user like root in mysql without pwd
[20:30:44] <obiwahn> yes when the admin was not created in advance
[20:30:48] <obiwahn> there is something
[20:30:58] <obiwahn> i read about that yesterday
[20:31:22] <rakkaus__> what do you mean Admin was not created?
[20:31:58] <obiwahn> http://docs.mongodb.org/manual/tutorial/enable-authentication/
[20:31:59] <rakkaus__> How can I create the admin ? :) when I not Authorized
[20:32:35] <obiwahn> localhost exception
[20:32:46] <obiwahn> when the admin is created in advance
[20:32:58] <obiwahn> the localhost exception is not made
[20:33:02] <obiwahn> i think thats it
[20:33:47] <rakkaus__> so there is no default user?
[20:34:04] <rakkaus__> my gosh :(
[20:35:10] <brammator> no default user, because "noath" is default ;-)
[20:35:13] <obiwahn> could somebody please help me with this task
[20:35:16] <obiwahn> http://paste.debian.net/111502/
[20:35:28] <obiwahn> i really starts to annoy me
[20:35:31] <obiwahn> it
[20:37:03] <Derick> obiwahn: i think your group should be on a compound key
[20:37:08] <Derick> just city isn't good enough
[20:38:25] <obiwahn> mmh - could you explain why?
[20:39:53] <obiwahn> at first i did not have the first group
[20:40:44] <obiwahn> i have added it so i get rid of the multiplicity for cities
[20:41:41] <obiwahn> Derick: maybe you could explain what the problem with my logic is. then i can figure the mongodb part out for myself
[20:42:01] <Derick> you need a compound group on city, state I think
[20:42:46] <Derick> hmm, maybe it's trickier :-)
[20:46:18] <obiwahn> you mean like ${group:{ _id:{ c:'$city', s:'$state'} }} ?
[20:47:52] <Derick> yeah
[20:48:35] <kali> ho yeah, you need that at some point
[20:49:13] <obiwahn> isn't it the same then just leaving the first group away?
[20:49:37] <obiwahn> like grouping on _id:something
[20:49:59] <obiwahn> that result is not any better
[20:51:19] <kali> well, you have all the piece of the solution. this being homework, i feel reluctant to give you the anwser :P
[20:53:11] <obiwahn> when i use the compound then i get the same wrong result as before
[20:54:02] <obiwahn> i do not want the solution - i want to know where i am loosing data and why
[20:57:02] <obiwahn> is a city name supposed to be counted only once when clculationg the average?
[20:57:39] <kali> obiwahn: your match is wrong
[21:01:34] <obiwahn> s it totally wrong? or is it because cities might consist of smaller parts and the population has to be summed up before applying the filter?
[21:08:23] <obiwahn> A city might have multiple zip codes. --- in the same state
[21:09:55] <obiwahn> kali: ok i have found what is wrong
[21:10:35] <kali> strong the force with this one is
[21:10:45] <obiwahn> meh :(
[21:13:42] <obiwahn> One zip code may cover cities in different states. ?!
[21:13:53] <obiwahn> the zip code is the id?
[21:14:20] <obiwahn> i am not sure if i am really happy about that homework ...
[21:15:31] <kali> who knows ? in a country with half a dozen units for volume alone, i would not be sure what to expect about zipcodes :)
[21:15:56] <rakkaus__> hi guys! how can I list all users in all dbs?
[21:51:52] <brammator> I have complex key like {name: 'alpha', key: 'VAernlRE=='} or {keyID: 12423, vCode: 'cn274rdd12cf'} etc
[21:52:15] <brammator> should I make it to string to have faster search?
[21:52:47] <brammator> (I don't use parts of this key)
[22:11:54] <Persillade_> hi
[22:14:06] <Persillade_> i'm a beginner in using a bash shell. I have installer mongo, have a connection but i don't have the prompt to enter commands. any one could advise ? thanks
[22:17:08] <joannac> Persillade_: you've opened the mongo shell?
[22:17:53] <Persillade_> joannac, I opened the shell on my mac os x, and typed mongod
[22:18:20] <Persillade_> i have 4 connections at the moment (don't know why i don't have just one)
[22:19:58] <joannac> Hi Derick!
[22:20:25] <joannac> Persillade_: in a separate terminal, type mongo
[22:20:31] <joannac> that's the shell
[22:20:49] <joannac> and that's the prompt you want to enter commands like "db.mycollection.find()"
[22:22:38] <obiwahn> mh
[22:23:25] <Persillade_> joannac, ty very much
[22:23:43] <joannac> obiwahn: lol, the zipcode homework
[22:24:00] <joannac> i think everyone got stuck on that
[22:24:22] <obiwahn> joannac: i have the answer for the next
[22:24:29] <obiwahn> but that is strange as well
[22:24:36] <obiwahn> why would i group twice?
[22:24:44] <obiwahn> there is no need
[22:25:07] <obiwahn> maybe the guy creating the homework was a bit tired
[22:25:20] <obiwahn> http://paste.debian.net/111530/
[22:26:00] <obiwahn> http://paste.debian.net/111531/
[22:31:12] <obiwahn> oh different number of assignments that is a good reason
[23:10:03] <in_deep_thought> I am trying to build a simple to-do app with the to-do items being stored as json objects with various attributes. Does this sound like something I need a db for (like mongodb for example) or could I just store everything in .json files? How much easier/harder would it be to pull things from the json files rather than a db?
[23:12:42] <Guest26862> depends on what you want to do with the todo elements, and how many you'll have. If it's a todo app, you'll probably be able to fit everything in memory. Can you save the elements on the client side, or do you need a server to aggregate all of the todos for each user?
[23:13:06] <joannac> obiwahn: I'd prefer you didn't make answers to assignments publicly available. could you nuke it please?