[00:09:30] (PS1) Ejegg: Update SmashPig lib [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397712 [00:09:33] (CR) Ejegg: [C: 2] Update SmashPig lib [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397712 (owner: Ejegg) [00:10:41] (Merged) jenkins-bot: Update SmashPig lib [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397712 (owner: Ejegg) [00:12:04] (PS1) Ejegg: Update SmashPig lib [wikimedia/fundraising/crm/vendor] - https://gerrit.wikimedia.org/r/397713 [00:12:17] (CR) Ejegg: [C: 2] Update SmashPig lib [wikimedia/fundraising/crm/vendor] - https://gerrit.wikimedia.org/r/397713 (owner: Ejegg) [00:12:19] (PS10) Eileen: Add stripe import [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/392566 (https://phabricator.wikimedia.org/T172423) [00:12:23] ejegg: yes - that was very slap-happy of me! [00:13:49] (PS11) Ejegg: Add stripe import [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/392566 (https://phabricator.wikimedia.org/T172423) (owner: Eileen) [00:13:59] (CR) Ejegg: [C: 2] "Lookin good!" [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/392566 (https://phabricator.wikimedia.org/T172423) (owner: Eileen) [00:14:36] just about to deploy to test the audit parsing [00:14:48] I'll add the stripe import too [00:17:27] cool [00:18:01] (Merged) jenkins-bot: Update SmashPig lib [wikimedia/fundraising/crm/vendor] - https://gerrit.wikimedia.org/r/397713 (owner: Ejegg) [00:18:15] (PS1) Ejegg: Update vendor [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397714 [00:18:18] (CR) Ejegg: [C: 2] Update vendor [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397714 (owner: Ejegg) [00:19:32] (PS1) Ejegg: Apply drupal formatting to offline2civicrm.module [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397715 [00:19:34] (PS1) Ejegg: Add stripe import [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397716 (https://phabricator.wikimedia.org/T172423) [00:19:38] (CR) Ejegg: [C: 2] Apply drupal formatting to offline2civicrm.module [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397715 (owner: Ejegg) [00:19:42] (CR) Ejegg: [C: 2] Add stripe import [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397716 (https://phabricator.wikimedia.org/T172423) (owner: Ejegg) [00:20:34] (PS1) Ejegg: Oops, forgot installed.json! [wikimedia/fundraising/crm/vendor] - https://gerrit.wikimedia.org/r/397717 [00:20:40] (CR) Ejegg: [C: 2] Oops, forgot installed.json! [wikimedia/fundraising/crm/vendor] - https://gerrit.wikimedia.org/r/397717 (owner: Ejegg) [00:20:56] (Merged) jenkins-bot: Add stripe import [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/392566 (https://phabricator.wikimedia.org/T172423) (owner: Eileen) [00:20:58] (Merged) jenkins-bot: Update vendor [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397714 (owner: Ejegg) [00:21:00] (Merged) jenkins-bot: Apply drupal formatting to offline2civicrm.module [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397715 (owner: Ejegg) [00:21:02] (Merged) jenkins-bot: Add stripe import [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397716 (https://phabricator.wikimedia.org/T172423) (owner: Ejegg) [00:21:11] (PS1) Ejegg: Fixed vendor commit [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397718 [00:21:14] (CR) Ejegg: [C: 2] Fixed vendor commit [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397718 (owner: Ejegg) [00:22:30] !log disabled nightly Ingenico WX audit parsing job [00:22:40] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log [00:24:31] (Merged) jenkins-bot: Oops, forgot installed.json! [wikimedia/fundraising/crm/vendor] - https://gerrit.wikimedia.org/r/397717 (owner: Ejegg) [00:24:34] (Merged) jenkins-bot: Fixed vendor commit [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397718 (owner: Ejegg) [00:25:37] !log updated CiviCRM from 2db9c761884c1c48f4e1dd41be416e029b23b481 to 85a8526eb89ab70cf5665ce2628c9898d4d41c69 [00:25:47] Logged the message at https://wikitech.wikimedia.org/wiki/Server_Admin_Log [00:28:52] Heh, yep, definitely a bit faster [00:29:06] 70k records parsed in 20 sec [00:29:27] vs the dumb way... 35k records parsed in 8,130 sec [00:29:36] Hooray for stream parsing [00:29:58] jeez, the old way must have been swapping like crazy [00:36:26] haha... the old way took 18 hrs to parse the file from Dec 4th [00:37:22] nice! [00:37:36] the new way takes 48 seconds [00:39:49] amazing [00:39:54] you just changed the parser? [00:41:35] yeah, the old way loaded the whole damn (500MB) file into a DomDocument and did a foreach loop with XPath results to collect DataRecords [00:43:16] the new way uses an XmlReader::read() loop and when it sees it's on a DataRecord element, copies it to a DomElement with expand(), then calls the same old function as before [00:44:25] even the new way is kindof a RAM hog b/c it collects ALL the outstanding txns, then tries to reconstruct them, instead of reconstructing as it goes [00:44:42] using like a gig virtual, 800MB resident [00:44:52] i wish i'd see what the old one was using [00:45:15] heh well sounds like a clear win [00:46:51] and... it's done all the files and reconstruction in 17 minutes [00:47:35] well, a few ppl are about to get thank you letters a week late [00:49:09] going for a victory lap in makemissing mode to clear out the real oldies [00:52:57] Fundraising Sprint Winter Wanderland, Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM, FR-WMF-Audit, Patch-For-Review: Ingenico WX audit parser taking crazy long, mysql connect dying - https://phabricator.wikimedia.org/T182605#3829854 (Ejegg) Thanks for calling out those missing refunds @M... [01:01:41] ok, see y'all tomorrow! [01:06:01] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM, FR-WMF-Audit: Ingenico WX audit parser: decide what to do with cc / rcc conflict - https://phabricator.wikimedia.org/T182646#3829863 (Ejegg) [01:06:41] oops, doubled up a bunch of the refund queue [01:06:57] hope that doesn't cause a failstorm [14:20:08] PROBLEM - check_puppetrun on civi1001 is CRITICAL: CRITICAL: Puppet has 11 failures. Last run 51 seconds ago with 11 failures. Failed resources (up to 3 shown): User[akosiaris],User[jgreen],User[cwdent],User[mark] [14:25:07] RECOVERY - check_puppetrun on civi1001 is OK: OK: Puppet is currently enabled, last run 1 minute ago with 0 failures [14:35:28] Jeff_Green: guessing that is transient? [14:36:28] yeah i forgot how account config works in puppet, fixed [14:36:41] :) [14:36:49] looks like the dmarc email is working too [14:36:53] yeah [14:37:15] collecting to civi1001 now too, so we can hook up processing to db or something someday [14:37:27] excellent [14:41:28] hey let's try to get the frdeploy stuff out today [14:42:12] ok sounds good [14:42:18] i'll make another pass over it now [14:42:24] k [14:42:54] i can go through it with you if it helps, i know that code is a tangly eel pit [14:49:14] i guess what i'm feeling is not having an actual code review system [14:49:33] being that there is two of us it is questionably necessary [14:49:44] yeah [14:49:57] but for something like this it would be easier to review if it was split up into patches/commits/something [14:50:10] true [14:50:19] and it's a lot of code all in one library really [14:50:20] it's hard for me to see the intent [14:50:53] why don't we go through it a chunk at a time and make sense of what each part does [14:51:13] yeah that would be helpful [15:54:44] hey ejegg! [15:55:10] want to review this patch: https://gerrit.wikimedia.org/r/#/c/397614/ i tried to turn it into a function but i think it works best manually ending the connection each time [16:00:50] hi mepps! [16:01:00] taking a look [16:35:50] ejegg, mepps - we are considering deploying the f_c_u time lint tools [16:36:25] hey cwd is there any documentation of the changes being deployed? [16:36:39] nope! :P [16:36:48] let's see... [16:38:18] cwd cool! [16:39:23] mepps: it's a fairly small behavior change, but includes a large overhaul of the deploy tool [16:39:45] cool cwd [16:43:38] (CR) Ejegg: "Cool! Looks like a premature close in 1 spot." (1 comment) [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397614 (owner: Mepps) [17:11:26] fundraising-tech-ops: encrypt fundraising kafka collector traffic - https://phabricator.wikimedia.org/T142993#3831644 (Nuria) [17:16:00] fundraising-tech-ops: fundraising_code_update lint localsettings config before deploy - https://phabricator.wikimedia.org/T179340#3831657 (Jgreen) Open>Resolved this is done in frack puppet commit 4ef431ecc4bf6c21ac0ca8fad23dab4cfbc84957 [17:16:18] fundraising-tech-ops: fix fundraising_code_update process-control git revision reporting bug - https://phabricator.wikimedia.org/T170341#3831659 (Jgreen) this is done in frack puppet commit 4ef431ecc4bf6c21ac0ca8fad23dab4cfbc84957 [17:16:29] fundraising-tech-ops: fix fundraising_code_update process-control git revision reporting bug - https://phabricator.wikimedia.org/T170341#3831660 (Jgreen) Open>Resolved [17:18:08] fundraising-tech-ops: fundraising_code_update could handle bad submodule shas better - https://phabricator.wikimedia.org/T176283#3831665 (Jgreen) a:Jgreen [17:19:06] Fundraising-Backlog, Wikimedia-Fundraising-CiviCRM, MediaWiki-extensions-DonationInterface: Check that vendor matches composer.lock during fundraising_code_update - https://phabricator.wikimedia.org/T131313#3831666 (Jgreen) a:Jgreen [17:20:14] PROBLEM - check_puppetrun on heka is CRITICAL: CRITICAL: Puppet has 1 failures. Last run 8 minutes ago with 1 failures. Failed resources (up to 3 shown): Package[yamllint] [17:20:36] damn it [17:21:09] no yamllint on trusty, should have check that [17:25:14] PROBLEM - check_puppetrun on heka is CRITICAL: CRITICAL: Puppet has 1 failures. Last run 13 minutes ago with 1 failures. Failed resources (up to 3 shown): Package[yamllint] [17:30:09] RECOVERY - check_puppetrun on heka is OK: OK: Puppet is currently enabled, last run 3 minutes ago with 0 failures [17:36:41] (PS1) Ejegg: Bad submodule pointer commit [wikimedia/fundraising/dash] (deployment) - https://gerrit.wikimedia.org/r/397883 (https://phabricator.wikimedia.org/T176283) [17:36:53] (CR) jerkins-bot: [V: -1] Bad submodule pointer commit [wikimedia/fundraising/dash] (deployment) - https://gerrit.wikimedia.org/r/397883 (https://phabricator.wikimedia.org/T176283) (owner: Ejegg) [17:36:57] (CR) Ejegg: [C: 2] Bad submodule pointer commit [wikimedia/fundraising/dash] (deployment) - https://gerrit.wikimedia.org/r/397883 (https://phabricator.wikimedia.org/T176283) (owner: Ejegg) [17:37:09] (CR) jerkins-bot: [V: -1] Bad submodule pointer commit [wikimedia/fundraising/dash] (deployment) - https://gerrit.wikimedia.org/r/397883 (https://phabricator.wikimedia.org/T176283) (owner: Ejegg) [17:38:43] (PS1) Ejegg: Go boom! [wikimedia/fundraising/dash/node_modules] - https://gerrit.wikimedia.org/r/397885 [17:39:01] (CR) Ejegg: [C: 2] "recheck" [wikimedia/fundraising/dash] (deployment) - https://gerrit.wikimedia.org/r/397883 (https://phabricator.wikimedia.org/T176283) (owner: Ejegg) [17:39:11] (CR) jerkins-bot: [V: -1] Bad submodule pointer commit [wikimedia/fundraising/dash] (deployment) - https://gerrit.wikimedia.org/r/397883 (https://phabricator.wikimedia.org/T176283) (owner: Ejegg) [17:39:18] (CR) jerkins-bot: [V: -1] Bad submodule pointer commit [wikimedia/fundraising/dash] (deployment) - https://gerrit.wikimedia.org/r/397883 (https://phabricator.wikimedia.org/T176283) (owner: Ejegg) [17:43:51] (PS1) Ejegg: Bad submodule SHA commit [wikimedia/fundraising/crm] (deployment) - https://gerrit.wikimedia.org/r/397886 [17:44:26] (Abandoned) Ejegg: Bad submodule pointer commit [wikimedia/fundraising/dash] (deployment) - https://gerrit.wikimedia.org/r/397883 (https://phabricator.wikimedia.org/T176283) (owner: Ejegg) [17:44:31] (Abandoned) Ejegg: Go boom! [wikimedia/fundraising/dash/node_modules] - https://gerrit.wikimedia.org/r/397885 (owner: Ejegg) [18:59:47] mepps I put a comment on your connection patch [19:04:50] (PS6) Mepps: End connections after query [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397614 [19:04:59] sorry ejegg i fixed it then didn't push it up [19:11:27] (PS7) Ejegg: End connections after query [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397614 (owner: Mepps) [19:11:38] (CR) Ejegg: [C: 2] "Thanks!" [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397614 (owner: Mepps) [19:12:25] Ah, just noticed another couple spots we could close stuff, will put up a patch [19:12:56] (Merged) jenkins-bot: End connections after query [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397614 (owner: Mepps) [19:16:03] oh shoot, i think some of those connection.end() should be connection.end [19:18:52] weird, how was that working? [19:19:22] seems like .then( connection.end() ) would fire the end() immediately [19:19:36] But it seemed to be saving boards ok [19:22:10] ejegg i think the then() waits for it to finish [19:22:13] based on my reading [19:22:24] i was running into that before it was in that loop [19:22:37] i mean in the then, but once it was, it resolved that issue [19:22:49] The argument to then() will be evaluated as soon as then() is called [19:23:19] which is why we usually wrap the arg in a function () {} [19:24:50] so... then( connection.end() ) would evaluate connection.end(), and whatever the result is, 'then' would hang on to it and call it at the right time [19:25:24] while then( connection.end ) would just see that connection.end is a function, and hang on to it till the the right time [19:25:34] as i understand it [19:25:46] but all this promise stuff does befuddle me sometimes [19:26:24] k, let's test with a new user [19:26:43] trying to reason about the execution order of a nodejs program?? [19:26:52] just changing the id in the debug auth, server.js line 118 [19:27:06] haha, yeah... [19:27:34] oops, yup, that's a bit busted [19:27:54] just comes back with JSON [19:28:01] {code: "POOL_CLOSED"} [19:28:53] so are you thinking this would work ejegg: return insertWidgetList( board, connection ).then( connection.end ); [19:30:11] oh hey, actually that doesn't even need the 'then' [19:30:22] b/c insertWidgetList closes it already [19:32:11] (PS1) Mepps: End connections after query [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397901 [19:32:42] (PS2) Mepps: Remove extra connection.end() [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397901 [19:33:35] ohhhh, crud [19:34:08] also, I think chaining connection.end as a fn is breaking the return value somehow? [19:36:40] mepps that last one is still coming back with POOL_CLOSED when I try to login a new user [19:37:38] (PS3) Mepps: Remove extra connection.end() [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397901 [19:37:44] (CR) jerkins-bot: [V: -1] Remove extra connection.end() [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397901 (owner: Mepps) [19:37:47] try the patch i just posted ejegg [19:38:10] but make sure you restart the server--i would get that error persistently until i did on changes [19:39:02] yep, still getting the error [19:39:06] definitely restarted [19:39:30] I'm pretty sure those connection.end() calls are happening before the query is finished [19:39:55] .then() is just a function, it doesn't do anything to the syntax of JS to make that call deferred [19:41:51] (PS4) Mepps: Remove extra connection.end() [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397901 [19:43:15] (PS5) Mepps: Remove extra connection.end() [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397901 [19:43:45] insertWidgetList is still returning the promise, right? [19:44:23] so you still want to hold off on actually executing end() [19:45:06] yeah i just removed it from insertWidgetList [19:45:11] not sure if it pushed the first time? [19:45:23] right, but you're executing it as soon as insertWidgetList returns [19:45:52] and the query's not guaranteed to be done till the promise that comes back is resolved [19:47:02] ejegg what setting are you changing to test this? [19:47:20] in server.js line 118 [19:47:28] changing the id of the debug auth user [19:48:03] messing around with a fix locally, think I almost have it [19:49:07] (PS1) Ejegg: Avoid closing connections prematurely [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397904 [19:49:13] That almost does it ^^^ [19:49:30] I did need to refresh after initial login to see the board list [19:49:33] but no errors [19:50:02] (CR) jerkins-bot: [V: -1] Avoid closing connections prematurely [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397904 (owner: Ejegg) [19:52:38] hmm i'll keep looking at this ejegg [20:32:55] (PS2) Ejegg: Avoid closing connections prematurely [wikimedia/fundraising/dash] - https://gerrit.wikimedia.org/r/397904 [20:52:39] Fundraising-Backlog, MediaWiki-extensions-CentralNotice, MediaWiki-extensions-DonationInterface: Run Phan on CentralNotice and DonationInterface - https://phabricator.wikimedia.org/T182714#3832392 (Ejegg) [21:42:24] Wikimedia-Fundraising, Android-app-feature-Feeds, Wikipedia-Android-App-Backlog, Wikipedia-iOS-App-Backlog, and 2 others: Big English Mobile App Fundraising ideas - https://phabricator.wikimedia.org/T180741#3832528 (JMinor) [21:43:45] Wikimedia-Fundraising, Mobile-Content-Service, Wikipedia-Android-App-Backlog, Wikipedia-iOS-App-Backlog, and 2 others: Run Big English fundraising on apps - https://phabricator.wikimedia.org/T181004#3832532 (JMinor) Per @jrobell we are on track to reach our goal and can set an end date for the an... [21:51:48] ejegg: K4-713 I have Tim - should we talk now? [21:52:24] (mepps ^^ but prob too late for you) [21:52:52] eileen: I can join whenever. [21:53:13] i have 8 whole minutes eileen! :) [21:53:18] make that 7 [21:53:27] lol [21:53:34] if it starts right now, i'm happy to shadow the beginning [21:54:31] :-) [21:54:38] well let's see if ejegg is free [21:55:34] oh hey, sorry! [21:55:47] sure, do we have a hangout? [21:55:49] ejegg: does now suit to talk to Tim? [21:56:04] eileen: sure [21:56:07] ok [21:56:08] https://hangouts.google.com/hangouts/_/wikimedia.org/tim-time [21:56:43] cwd XenoRyet Jeff_Green if any of you want to join the above - it's to discuss possibility of a read only connection to civi [21:56:54] K4-713: ^^ [21:57:22] oh I thought that was next tuesday! ha. [21:57:27] ok be there in a minute [21:57:31] ah me too! [21:57:33] Argh... hangout is on a different computer from IRC. This might take a minute. [21:58:07] * Jeff_Green makes another pitch for IRC meetings :-P [21:59:12] +1 4 async [22:30:33] found this from a long time ago https://issues.civicrm.org/jira/browse/CRM-10192 [22:36:52] K4-713: ejegg[m] it does seem worth profiling the time to load contact pages at some point - I suspect some lazy-load stuff around the contact object could improve things - ie. currently we often load what we need when we need it - regardless of whether it was previously loaded. [22:40:42] eileen: Yeah... agreed. But simulating an active write connection while searching could be challenging. [22:41:02] Too bad we haven't been measuring all the things all the time. [22:41:54] We should establish our current baseline, though. [22:41:55] might not be useful but I think nginx logs would have page load time [23:15:59] one of the benefits I see in getting Tim to do this work for us is converting him to see temp tables the way we see them :-) [23:27:15] Yeah, there is that.