Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #42317
| Path | csiph.com!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!newsfeed.xs4all.nl!newsfeed4.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail |
|---|---|
| Return-Path | <rosuav@gmail.com> |
| X-Original-To | python-list@python.org |
| Delivered-To | python-list@mail.python.org |
| X-Spam-Status | OK 0.131 |
| X-Spam-Level | * |
| X-Spam-Evidence | '*H*': 0.74; '*S*': 0.00; 'affected': 0.07; 'postgresql': 0.07; 'handful': 0.09; 'subject:How': 0.10; 'failover': 0.16; 'from:addr:rosuav': 0.16; 'from:name:chris angelico': 0.16; 'lie': 0.16; 'means:': 0.16; 'normally,': 0.16; 'reliability.': 0.16; 'roy': 0.16; 'sat,': 0.16; 'do,': 0.16; 'wrote:': 0.18; 'options.': 0.19; 'written,': 0.19; 'tests': 0.22; "aren't": 0.24; 'decide': 0.24; "haven't": 0.24; '(or': 0.24; 'least': 0.26; 'header:In-Reply-To:1': 0.27; 'point': 0.28; 'chris': 0.29; 'message-id:@mail.gmail.com': 0.30; "i'm": 0.30; 'too.': 0.31; 'them?': 0.31; 'yes.': 0.31; 'file': 0.32; 'probably': 0.32; "we're": 0.32; 'linux': 0.33; 'maybe': 0.34; 'subject:with': 0.35; 'received:209.85': 0.35; 'transaction': 0.35; 'point.': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'there': 0.35; 'possible': 0.36; 'operating': 0.37; 'received:209': 0.37; 'to:addr:python-list': 0.38; 'pm,': 0.38; 'anything': 0.39; 'realize': 0.39; 'sure': 0.39; 'to:addr:python.org': 0.39; 'then,': 0.60; 'most': 0.60; 'hope': 0.61; 'mentioned': 0.61; 'guarantee': 0.63; 'decided': 0.64; 'our': 0.64; 'more': 0.64; '30,': 0.65; 'side': 0.67; 'mar': 0.68; 'smith': 0.68; 'results': 0.69; 'integrity': 0.74; 'lives': 0.74; 'article': 0.77; 'mature': 0.84; 'reliability': 0.84; 'route': 0.84; 'scary.': 0.84; 'subject:find': 0.84; 'trustworthy': 0.91; 'imagine': 0.93; '2013': 0.98 |
| DKIM-Signature | v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:content-type; bh=hYsY0dj/5bjrnR05Nw/DcIgN6ko0jMKeZnvaDv9iaGk=; b=c3p4dlvqy02P5Rwp3nylHH1aGwtdnCM62aVt408ifk0tSlMIgIp3TKeMDfbUleUKqU 9T69VIdIw6ZD1LOqAln4K+CerntztbxEh6YeLjr9jSHEE516Sqr9KyRhp2o9YsFrfDOo eWDqvDiSRlky/120Gxpkd8xBvE2/TNnvzTw++kEYHJHJtLnLn51dqkpW1lKRE0rHBh0O Heh0ZIil6t92QZO6CXZx/h6jcXXIj1weMQU3mm0jPiDpa+6T4fQaMSLMAS17stlntCsH SKfLj6kBCYLaKSzHQMytiLibYa5vjP69wjhBmPKUOEthyMya2NdyxsoAzOpep4mOFcSN BFhg== |
| MIME-Version | 1.0 |
| X-Received | by 10.220.88.145 with SMTP id a17mr3474876vcm.66.1364617291761; Fri, 29 Mar 2013 21:21:31 -0700 (PDT) |
| In-Reply-To | <roy-0B9881.00100930032013@news.panix.com> |
| References | <F40EFF8D-9F4F-4ACB-8671-450F3CD761CA@panix.com> <5155E32A.1000403@davea.name> <mailman.3971.1364595940.2939.python-list@python.org> <roy-A61512.20410329032013@news.panix.com> <roy-1FF146.22445329032013@news.panix.com> <mailman.3980.1364611804.2939.python-list@python.org> <roy-8D4A5A.23093729032013@news.panix.com> <mailman.3981.1364613280.2939.python-list@python.org> <roy-211B1A.23365429032013@news.panix.com> <mailman.3986.1364615879.2939.python-list@python.org> <roy-0B9881.00100930032013@news.panix.com> |
| Date | Sat, 30 Mar 2013 15:21:31 +1100 |
| Subject | Re: How to find bad row with db api executemany()? |
| From | Chris Angelico <rosuav@gmail.com> |
| To | python-list@python.org |
| Content-Type | text/plain; charset=ISO-8859-1 |
| X-BeenThere | python-list@python.org |
| X-Mailman-Version | 2.1.15 |
| Precedence | list |
| List-Id | General discussion list for the Python programming language <python-list.python.org> |
| List-Unsubscribe | <http://mail.python.org/mailman/options/python-list>, <mailto:python-list-request@python.org?subject=unsubscribe> |
| List-Archive | <http://mail.python.org/pipermail/python-list/> |
| List-Post | <mailto:python-list@python.org> |
| List-Help | <mailto:python-list-request@python.org?subject=help> |
| List-Subscribe | <http://mail.python.org/mailman/listinfo/python-list>, <mailto:python-list-request@python.org?subject=subscribe> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.3988.1364617294.2939.python-list@python.org> (permalink) |
| Lines | 40 |
| NNTP-Posting-Host | 2001:888:2000:d::a6 |
| X-Trace | 1364617294 news.xs4all.nl 6874 [2001:888:2000:d::a6]:57739 |
| X-Complaints-To | abuse@xs4all.nl |
| Xref | csiph.com comp.lang.python:42317 |
Show key headers only | View raw
On Sat, Mar 30, 2013 at 3:10 PM, Roy Smith <roy@panix.com> wrote: > In article <mailman.3986.1364615879.2939.python-list@python.org>, > Chris Angelico <rosuav@gmail.com> wrote: > >> Side point: You mentioned SSDs. Are you aware of the fundamental risks >> associated with them? Only a handful of SSD models are actually >> trustworthy for databasing. > > We haven't decided if we're going that route yet, but if we do, we will > probably use do RAID SSD for added reliability. We also have all our > database servers in failover clusters, so we get added reliability that > way too. But will you know if you have corruption? Normally, transactional integrity means: 1) If a transaction, from begin to commit, is not completely applied, then it is completely not-applied; and 2) If a transaction that was affected by this one has been applied, then so has this one. SSDs that lie about fsync (and some hard disks lie too, as do some operating systems and some file system drivers, but - under Linux at least - it's possible to guarantee the OS and FS parts) can violate both halves. Anything might have been written, anything might have been missed. I did some tests with PostgreSQL on an SSD, and the results were seriously scary. > But, we have some runway left with more conventional technologies, so we > don't need to decide for a while. Ultimately, however, as reliability > goes up and cost comes down, it's hard to imagine the SSD isn't going to > be a big part of our lives at some point. Yes. I hope that by then, the manufacturers will realize that TPS isn't the only thing that matters. I'm sure SSDs will mature to the point where we can trust all brands equally (or at least, most brands - maybe it'll be like "server SSDs" and "desktop SSDs"?), but until then, there aren't many options. ChrisA
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: How to find bad row with db api executemany()? Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2013-03-29 18:25 -0400
Re: How to find bad row with db api executemany()? Roy Smith <roy@panix.com> - 2013-03-29 20:41 -0400
Re: How to find bad row with db api executemany()? Chris Angelico <rosuav@gmail.com> - 2013-03-30 11:57 +1100
Re: How to find bad row with db api executemany()? Roy Smith <roy@panix.com> - 2013-03-29 21:19 -0400
Re: How to find bad row with db api executemany()? Chris Angelico <rosuav@gmail.com> - 2013-03-30 13:05 +1100
Re: How to find bad row with db api executemany()? Tim Chase <python.list@tim.thechases.com> - 2013-03-29 22:17 -0500
Re: How to find bad row with db api executemany()? (PS) Tim Chase <python.list@tim.thechases.com> - 2013-03-29 22:38 -0500
Re: How to find bad row with db api executemany()? Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2013-03-29 23:38 -0400
Re: How to find bad row with db api executemany()? Roy Smith <roy@panix.com> - 2013-03-29 22:44 -0400
Re: How to find bad row with db api executemany()? Chris Angelico <rosuav@gmail.com> - 2013-03-30 13:49 +1100
Re: How to find bad row with db api executemany()? Roy Smith <roy@panix.com> - 2013-03-29 23:09 -0400
Re: How to find bad row with db api executemany()? Chris Angelico <rosuav@gmail.com> - 2013-03-30 14:14 +1100
Re: How to find bad row with db api executemany()? Roy Smith <roy@panix.com> - 2013-03-29 23:36 -0400
Re: How to find bad row with db api executemany()? Chris Angelico <rosuav@gmail.com> - 2013-03-30 14:57 +1100
Re: How to find bad row with db api executemany()? Roy Smith <roy@panix.com> - 2013-03-30 00:10 -0400
Re: How to find bad row with db api executemany()? Chris Angelico <rosuav@gmail.com> - 2013-03-30 15:21 +1100
Re: How to find bad row with db api executemany()? Roy Smith <roy@panix.com> - 2013-03-30 10:19 -0400
Re: How to find bad row with db api executemany()? rusi <rustompmody@gmail.com> - 2013-03-29 20:13 -0700
Re: How to find bad row with db api executemany()? rusi <rustompmody@gmail.com> - 2013-03-29 20:15 -0700
Re: How to find bad row with db api executemany()? Roy Smith <roy@panix.com> - 2013-03-29 23:40 -0400
Re: How to find bad row with db api executemany()? Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2013-03-29 23:53 -0400
Re: How to find bad row with db api executemany()? Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2013-03-30 00:19 -0400
Re: How to find bad row with db api executemany()? Chris Angelico <rosuav@gmail.com> - 2013-03-30 15:24 +1100
Re: How to find bad row with db api executemany()? Tim Chase <python.list@tim.thechases.com> - 2013-03-30 06:38 -0500
csiph-web