=== slank is now known as slank_away | ||
* StevenK stabs sampledata | 01:00 | |
StevenK | I guess my testfix is to run the garbo job against sampledata | 01:00 |
---|---|---|
wgrant | Indeed | 01:03 |
wgrant | Also, i'm not sure we can actually optimise the SET NOT NULLs | 01:03 |
wgrant | postgres is a bit stupid | 01:04 |
StevenK | :-( | 01:04 |
wgrant | It doesn't actually use indices at all | 01:04 |
StevenK | Wow | 01:04 |
wgrant | When you add a new NOT NULL constraint to a table, it goes through every tuple and verifies that every NOT NULL constraint is satisfied | 01:05 |
StevenK | We can probably do it in two patches | 01:05 |
StevenK | But it will still make those two FDTs 5 seconds long | 01:05 |
wgrant | Nah, best to do it in one patch | 01:07 |
wgrant | One statement can alter two columns. | 01:07 |
wgrant | So we can do both in two seconds | 01:08 |
wgrant | (on DF) | 01:08 |
StevenK | Oh | 01:08 |
StevenK | It's just a comma? | 01:08 |
wgrant | Right | 01:08 |
wgrant | launchpad_dogfood=# ALTER TABLE packageupload ALTER COLUMN searchable_names SET NOT NULL, ALTER COLUMN searchable_versions SET NOT NULL; | 01:08 |
wgrant | ALTER TABLE | 01:08 |
wgrant | Time: 2210.737 ms | 01:08 |
wgrant | (or we could just manually set attnotnull, I guess :)) | 01:12 |
wgrant | That's probably not too evil | 01:12 |
StevenK | Hahaha | 01:12 |
wgrant | I'm serious | 01:12 |
wgrant | It's a reasonable thing to do | 01:12 |
StevenK | That won't check each tuple? | 01:12 |
wgrant | No | 01:13 |
wgrant | Huh, in fact, manually setting attnotnull was the only way back in 7.0 | 01:13 |
StevenK | Heh | 01:13 |
wgrant | Yeah, that would work fine, looking at the code and some tests. But that would want to wait until stub is back :) | 01:15 |
StevenK | Does attnotnull take a full table lock? | 01:15 |
StevenK | Right, so my sampledata changes do fix that test | 01:18 |
wgrant | That was the only failure? | 01:18 |
StevenK | And one whole container failed to come up, it seems | 01:18 |
StevenK | Maybe not, given the count | 01:18 |
StevenK | One 'Launchpad failed to start in 60 attempts' old chestnut | 01:19 |
wgrant | One could set attnotnull without taking a full table lock, given that we know the data is good, but that seems a bit evil. ALTER TABLE ... ALTER COLUMN ... SET NOT NULL takes a full access exclusive lock to avoid any null tuples being inserted under its nose, and also to avoid any potential plan changes on other mid-flight queries, but neither is relevant here. | 01:19 |
StevenK | Indeed | 01:20 |
StevenK | The columns won't be created NULL, and nothing else is reading it | 01:20 |
wgrant | But we could probably just pay the 2s | 01:20 |
StevenK | Well, Storm will be, but it won't be paying attention | 01:20 |
StevenK | wgrant: And yes, only one failure | 01:21 |
StevenK | wgrant: Self-review? It runs the garbo job against dev,test-playground | 01:22 |
StevenK | 2 files changed, 30 insertions(+), 30 deletions(-) | 01:22 |
wgrant | Fine | 01:23 |
StevenK | Right, testfix landed | 01:26 |
* StevenK stabs buildbot | 02:47 | |
StevenK | wgrant: I wonder if postgres isn't using indicies because they can be out of date. Is that completly wrong, and it should use indicies if they exist? | 03:21 |
wgrant | Given an access exclusive lock as it takes now, an index should be usable. | 03:23 |
StevenK | So it's arguably a bug that it won't check an index? | 03:23 |
wgrant | Not a bug. | 03:24 |
wgrant | A potential future optimisation. | 03:24 |
StevenK | Which may get filed as a bug ... :-) | 03:24 |
StevenK | Buildbot is finally done | 03:26 |
StevenK | Now to wait for qas to update | 03:27 |
=== Ursinha is now known as Ursinha-afk | ||
=== yofel_ is now known as yofel | ||
=== mthaddon` is now known as mthaddon | ||
=== Ursinha-afk is now known as Ursinha | ||
=== slank_away is now known as slank | ||
=== cjwatson_ is now known as cjwatson | ||
=== Ursinha_ is now known as Ursinha | ||
sinzui | jcsackett, rick_h_, do either you you have time to look at my WCAG fix for the structural subscription widget: https://code.launchpad.net/~sinzui/launchpad/bugs-subscriptons-wcag-love/+merge/139812 | 15:02 |
jcsackett | sinzui: i can look. | 15:02 |
jcsackett | sinzui: r=me. and bonus points for using OMG in the cover letter. :-) | 15:14 |
sinzui | thank you | 15:15 |
timrc | sinzui, if I change the bug sharing policy, it only applies to new bugs... it won't retroactively apply to existing bugs? | 15:54 |
sinzui | correct | 15:55 |
sinzui | timrc, I have a script that walks over all bugs and branches and tries to change the into type. Would you like a copy in cases where you do want to change them all? | 15:56 |
timrc | sinzui, sure, I'd be interested in that script | 15:56 |
timrc | I think we have people going rogue and screwing around with their sharing policies... do you have a script that slaps people too? :) | 15:57 |
=== matsubara is now known as matsubara-lunch | ||
timrc | sinzui, OK, I think I see the error of my ways. So when I create a bug in a project with a proprietary bug sharing policy, the new bug defaults to proprietary. To make it sharable between projects it has to be changed to private... | 16:14 |
sinzui | yes. Someone needs to vet the information to be certain the bug can be shared with another project how can also choose to make it public | 16:16 |
sinzui | timrc, as for slapping user who screw up the policies, I am open to suggestion for punishment so long as it is equal to the burden they inflict upon others... | 16:19 |
sinzui | I still see people not sharing with ~canonical, so we are locked out and we need to stop work and fix the project. | 16:20 |
=== matsubara-lunch is now known as matsubara | ||
=== deryck is now known as deryck[lunch] | ||
=== deryck[lunch] is now known as deryck | ||
=== Ursinha is now known as Ursinha-afk | ||
=== benji___ is now known as benji | ||
=== slank is now known as slank_away |
Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!