0:51 AM
pfrazee joined the channel
0:51 AM
notwes joined the channel
0:55 AM
notwes has quit
0:59 AM
mandric has quit
1:30 AM
jekrb joined the channel
1:31 AM
dat-gitter-bot has quit
1:32 AM
dat-gitter-bot joined the channel
1:34 AM
jekrb joined the channel
1:41 AM
jhand
karissa: did routes on the datfolder username/dataset change or something? getting a full html page back from that route now in the dat-next tests.
1:42 AM
karissa
jhand: what are you looking for?
1:42 AM
1:42 AM
jhand
1:42 AM
huh
1:42 AM
karissa
jhand: one sec
1:42 AM
jhand
let me reinstall that dependency
1:43 AM
karissa
jhand: ive been working dilligently on the master branch yesterday and today
1:43 AM
jhand
I didn't think this happened on travis, just seeing it locally.
1:43 AM
karissa: ya thats why I had trouble seeing if it was me or some change I missed
1:43 AM
danger of using master for testing in the cli
1:43 AM
karissa
jhand: what database do you have set up?
1:43 AM
jhand: a sqlite one?
1:43 AM
jhand
1:43 AM
ya
1:46 AM
karissa
jhand: hm i have a test for it and its passing locally
1:46 AM
jhand
karissa: ya im confused. I just reinstalled and getting different error
1:47 AM
let me sit with it a bit more
1:47 AM
karissa
jhand: which?
1:47 AM
jhand
"{ statusCode: 400, message: 'A dat already exists with that name on that account.' } ")
1:47 AM
trying to clone from joe/dataset
1:47 AM
karissa
yeah cause the db already exists
1:47 AM
jhand
oh no wrong error
1:47 AM
karissa
are you trying to create a dat
1:47 AM
jhand
("http://localhost:3000/api/v1/joe/awesome {"statusCode":400,"message":"Dat with that name not found."}
1:48 AM
karissa
yeah maybe the username is wrong or the dat never got created or something?
1:48 AM
jhand
karissa: ya I think its doing it in the test before but I'll make sure.
1:49 AM
karissa: agh. So if I run `npm test` its all fine. I was running the specific auth.js tests only and that was failing.
1:50 AM
karissa
so it wasn't creating the dat or something?
1:50 AM
jhand
karissa: ya I thought each test was independent but must have missed something
1:51 AM
its definitely creating it, since thats the test right before it. but something obv missing
1:51 AM
pfrazee joined the channel
1:52 AM
karissa
ok
2:05 AM
wavis joined the channel
2:41 AM
pfrazee
2:45 AM
dat-git-bot
2:45 AM
dat/greenkeeper-discovery-swarm-4.2.0 f23b719 greenkeeperio-bot: chore(package): update discovery-swarm to version 4.2.0...
2:49 AM
G-Ray_ has quit
2:50 AM
ogd
4.2.0 blaze it
2:50 AM
yoshuawuyts
lol max
2:54 AM
ogd
npm version swag
2:57 AM
travis-ci
2:57 AM
dat-git-bot
2:57 AM
ogd
dangit
2:58 AM
pfrazee
haha
3:09 AM
ogd: am I making sense?
3:09 AM
ogd
pfrazee: i am just wondering if the 'many hypercores over one connection' is the issues
3:09 AM
issue*
3:10 AM
pfrazee: and if we can just have them each be a separate process
3:10 AM
pfrazee
ogd: yeah, it's not exactly. The issue is *too* many hypercores
3:10 AM
ogd
pfrazee: but say i have a million hypercores on a machine
3:10 AM
pfrazee
yeah
3:10 AM
jekrb joined the channel
3:10 AM
ogd
pfrazee: and a client wants to push or clone one
3:10 AM
pfrazee: that should scale fine right?
3:10 AM
pfrazee
ogd: right, and it'll be fine if it goes like this
3:11 AM
client connects you. client says, "can I have one?" you give
3:11 AM
but badly if it goes like this:
3:11 AM
client connects. you say, "hey I have a million cores, here they all are." client dead
3:12 AM
afaik, in that second scenario, it wont try to replicate all million, but it will announce them
3:12 AM
and that's still a rpblem
3:12 AM
jhand
in what situation would the client be asking for > 2 feeds?
3:12 AM
ogd
pfrazee: i think announcing a million things is fine
3:12 AM
pfrazee
jhand: I'm not sure. I think it depends on how the client is written
3:12 AM
ogd
pfrazee: we'll need to scale discovery-channel anyway when we hit that point
3:12 AM
jhand
3:12 AM
pfrazee
ogd: it's fine for now but that's a huge amount of traffic
3:13 AM
ogd
pfrazee: yea im sure we can optimize announcing
3:13 AM
pfrazee
jhand: that's a different flood but yeah
3:13 AM
ogd
pfrazee: what i dont get is the protocol level many .replicate() over one socket thing
3:13 AM
pfrazee
ogd: it's just multiplexing
3:13 AM
I think that's a good thing
3:13 AM
jhand
"just multiplexing" lol
3:14 AM
3:14 AM
ogd
so is the issue that if passive is off, it will spam the socket with all the multiplexed dat headers?
3:14 AM
pfrazee
jhand: to clarify, there's two places where a flood could happen. The one you linked to is announcing on the discovery network. The other one, which max and I are discussing, is announcing feeds once a connection is established between peers
3:14 AM
ogd
handshakes/headers
3:14 AM
jhand
ah
3:14 AM
pfrazee
ogd: correct
3:15 AM
ogd
3:15 AM
pfrazee
yeah
3:15 AM
ogd
pfrazee: so all im saying is, why announce over the socket
3:15 AM
pfrazee: when we have a separate stage for announcing
3:15 AM
(discovery channel)
3:16 AM
pfrazee
ogd: oh I see. Yeah not sure. Perhaps an optimization
3:16 AM
ogd
so thats our question for when mafintosh wakes up :D
3:16 AM
pfrazee
ogd: in my code in beaker, I do what you suggest
3:16 AM
hah yeah
3:16 AM
ogd
i think by using the same ip/port for multiple dat keys its causing this issue
3:16 AM
well actually i take that back
3:17 AM
pfrazee
3:17 AM
ogd
so if the archiver by default announced all its keys over discovery-channel, with the same ip/port
3:17 AM
by did not do this eager .replicate() thing
3:17 AM
then i think everything would work right?
3:18 AM
it would just wait for the other side to call .replicate() for the key
3:18 AM
and since it has announced itself, the other side should find it and be able to initiate
3:18 AM
*but did not
3:19 AM
pfrazee
I think it should
3:19 AM
code I linked works that way, and I think it would work, just perhaps be slower than optimistic announcements
3:19 AM
ogd
does hypercore-archiver announce over discovery-channel now?
3:19 AM
pfrazee
yes
3:19 AM
well
3:19 AM
jhand
if we had two bots would we get Canadian replication with that?
3:19 AM
pfrazee
its consumers do
3:20 AM
ogd
what do you mean consumers?
3:20 AM
pfrazee
optimistic announcements arent necessarily bad, they just cant go overboard
3:20 AM
consumers - users of the library
3:20 AM
hypercloud being one
3:20 AM
the discovery stuff is not implemented in hypercore-archiver
3:20 AM
ogd
ok so in hypercore-archiver-bot it must not do announcing
3:21 AM
cause that would explain its canadianness
3:21 AM
pfrazee
I'll check
3:21 AM
jhand
right
3:21 AM
ogd
it can either announce over discovery-channel or announce via eager .replicate()
3:21 AM
but if it does neither its a canadian
3:21 AM
pfrazee
it uses discovery-channel
3:21 AM
3:21 AM
ogd
i hope someones reading this right now wondering what im talking about
3:21 AM
pfrazee
it just doesnt ask for anything
3:22 AM
ogd: too polite to ask?
3:22 AM
ogd
lol
3:22 AM
so its announcing (disc.join with a port)
3:22 AM
pfrazee
I see I see
3:22 AM
ok this should be totally solveable then
3:23 AM
notwes joined the channel
3:23 AM
ogd
ah i remember now
3:23 AM
the canadian scenario is
3:23 AM
two hypercore-archiver-bots walk into a bar
3:23 AM
jhand
but the passive is true so it doesn't do the eager replication
3:23 AM
ogd
both are passive
3:23 AM
neither call .replicate()
3:23 AM
<time passes forever>
3:24 AM
jhand
some bots just keep waiting for the right moment
3:24 AM
ogd
poor bot
3:25 AM
so i kinda think
3:25 AM
to solve the canadian bot problem
3:25 AM
when you call ! add with the bot it should have it call .replicate() in that instance
3:26 AM
otherwise it should act as it currently acts
3:26 AM
pfrazee
that would make sense
3:27 AM
notwes has quit
3:36 AM
3:37 AM
this wont scale horizontally as I'm imagining it, or even vertically too well, but we'll just have to plan to rewrite it in the future