ZODB3 (Zope βάση δεδομένων αντικειμένων) παρέχει μια αντικειμενοστραφής βάση δεδομένων για Python που παρέχει υψηλού βαθμού διαφάνειας.
Οι αιτήσεις μπορούν να επωφεληθούν από τα χαρακτηριστικά της βάσης δεδομένων αντικειμένων με λίγα, εάν υπάρχουν, αλλαγές στη λογική της εφαρμογής. ZODB περιλαμβάνει χαρακτηριστικά όπως αποσπώμενες περιβάλλον αποθήκευσης, πλούσια υποστήριξη των συναλλαγών, και να αναιρέσετε
Τι είναι καινούργιο σε αυτή την έκδοση:.
- Αναγκαστική χρήση των bytes για «_p_serial» της επίμονης αντικειμένων (επιδιορθώσεις συμβατότητας με τις πρόσφατες κυκλοφορίες επίμονη).
Τι είναι καινούργιο στην έκδοση 3.10.5:
- Επίλυση συγκρούσεων απέτυχε όταν η κρατική περιελάμβανε διασταυρούμενη βάση δεδομένων επίμονη αναφορές με τις κατηγορίες που δεν μπορούν να εισαχθούν.
Τι είναι καινούργιο στην έκδοση 3.10.4:
- Επίλυση συγκρούσεων απέτυχε όταν η κρατική περιλαμβάνονται επίμονες αναφορές με τις κατηγορίες ότι δεν θα μπορούσε να εισαχθεί.
Τι είναι καινούργιο στην έκδοση 3.10.3:
- σφαλμάτων που επιδιορθώνονται:
- & quot? Οθόνη δραστηριότητα δεν ενημερώνονται για subconnections όταν η σύνδεση επέστρεψε στην πισίνα & quot?
- https://bugs.launchpad.net/zodb/+bug/737198
- & quot? Blob αρχείο temp πάρει απομάκρυνε πριν θα έπρεπε & quot ;, https://bugs.launchpad.net/zodb/+bug/595378
- Ένας τρόπος για να συμβεί αυτό είναι ότι μια συναλλαγή ματαιώθηκε μετά τη διαδικασία διαπράττουν έχει ξεκινήσει. Δεν ξέρω πώς αυτό θα μπορούσε να συμβεί στην άγρια φύση.
- Σε 3.10.3, η ZEO tpc_abort κλήση στο διακομιστή αλλάξει ώστε να είναι συγχρονισμένες, πράγμα που θα πρέπει να αντιμετωπίσει αυτή την περίπτωση. Ίσως υπάρχει μια άλλη υπόθεση.
- Βελτιώσεις απόδοσης:
- Βελτιωμένη ZEO εφαρμογής της μνήμης cache του πελάτη ώστε να είναι λιγότερο πιθανό να εκδιώξει τα αντικείμενα που χρησιμοποιούνται.
- Μικρό (πιθανώς αμελητέα) μείωση της CPU σε διακομιστές αποθήκευσης ZEO για την εξυπηρέτηση φορτίων αντικείμενο και στη δικτύωση κώδικα.
Τι είναι καινούργιο στην έκδοση 3.10.1:
- σφαλμάτων που επιδιορθώνονται:
- Όταν μια συναλλαγή που επανέρχεται μια savepoint μετά την προσθήκη αντικειμένων και στη συνέχεια προστίθενται περισσότερα αντικείμενα και διαπράττονται, ένα λάθος θα μπορούσε να αυξηθεί & quot? ValueError: Ένα διαφορετικό αντικείμενο έχει ήδη το ίδιο oid & quot? προκαλεί η συναλλαγή να αποτύχει. Ακόμη χειρότερα, αυτό θα μπορούσε να αφήσει μια βάση δεδομένων σε μια κατάσταση όπου μεταγενέστερες συναλλαγές στην ίδια διαδικασία θα αποτύχει.
- https://bugs.launchpad.net/zodb/+bug/665452
- Unix πρίζες τομέα δεν λειτούργησε για ZEO (δεδομένου ότι η προσθήκη της υποστήριξης IPv6). https://bugs.launchpad.net/zodb/+bug/663259
- Καταργήθηκε missfeature που μπορεί να προκαλέσει προβλήματα στην απόδοση κατά τη χρήση ενός εξωτερικού συλλέκτη σκουπιδιών με ZEO. Όταν τα αντικείμενα έχουν διαγραφεί από την αποθήκευση, invalidations εστάλησαν στους πελάτες. Αυτό δεν έχει κανένα νόημα. Είναι εξωφρενικά απίθανο ότι οι άλλες συνδέσεις / πελάτες έχουν αντίγραφα των σκουπιδιών. Στην κανονική ξεσκαρτάρισμα αποθήκευσης, δεν στέλνουμε invalidations. Δεν υπάρχει κανένας λόγος να στέλνετε όταν χρησιμοποιείται έναν εξωτερικό συλλέκτη σκουπιδιών.
- ZEO πελάτη προσομοίωση μνήμη cache misshandled invalidations προκαλούν εσφαλμένα στατιστικά στοιχεία και σφάλματα.
Τι είναι καινούργιο στην έκδοση 3.10.0 Beta 8:
- σφάλματα σταθερό:
- Σε μερικά συστήματα, χρησιμοποιώντας μια κενή συμβολοσειρά σε μια διεύθυνση εξυπηρετητή του πελάτη ZEO οδήγησε σε λάθος υποδοχή. Τώρα, ZEO πελατών θεραπεία '' ως ένα ψευδώνυμο για "localhost".
- Όταν λήξει το χρονικό όριο της πισίνας είχε καθοριστεί για μια βάση δεδομένων και παλιά συνδέσεις αφαιρέθηκαν λόγω του χρονικού ορίου, ένα σφάλμα οφείλεται σε ένα σφάλμα στη λογική καθαρισμού σύνδεση.
- Όταν συνδέσεις mulri βάση δεδομένων μην χρησιμοποιούνται πλέον και καθαριστεί, subconnections τους δεν είχαν καθαριστεί σωστά.
- Αλλαγές στο suppprt IPv6 έσπασε μια διόρθωση για ένα πρόβλημα στο Mac OS X, το οποίο θα μπορούσε να προκαλέσει ένα διακομιστή να σταματήσει να αποδέχεται συνδέσεις.
Τι είναι καινούργιο στην έκδοση 3.9.7:
- σφαλμάτων που επιδιορθώνονται:
- Αλλαγές στο τρόπο που ξεσκαρτάρισμα αντιμετωπίζει λεξικά στην Python 2.7 έσπασε την υλοποίηση της κρυφής μνήμης αντικείμενο / σύνδεση. (Https://bugs.launchpad.net/zodb/+bug/641481)
- Python 2.7 δεν υποστήριζε επίσημα, αλλά ήμασταν εκτελέσιμα για αυτό, έτσι ... Logrotation / repoening μέσω ενός σήματος SIGUSR2 δεν υλοποιήθηκε. (Https://bugs.launchpad.net/zodb/+bug/143600)
- Κατά τη χρήση πολλαπλών βάσεων δεδομένων, λειτουργίες της μνήμης cache-διαχείρισης σε μια σύνδεση, cacheMinimize και cacheGC, δεν εφαρμόστηκαν σε subconnections.
Τι είναι καινούργιο στην έκδοση 3.10.0 Beta 7:
- σφάλματα σταθερό:
- ZEO δεν λειτούργησε με το IPv6 addrsses. Προστέθηκε υποστήριξη IPv6 εισφέρει Martin κατά. Lowis.
- Αλλαγές στο τρόπο ότι η συλλογή γκαράζ αντιμετωπίζει λεξικά στην Python 2.7 έσπασε την υλοποίηση της κρυφής μνήμης αντικείμενο / σύνδεση. (Https://bugs.launchpad.net/zodb/+bug/641481)
- Ένα bug αποθήκευσης αρχείων θα μπορούσε να προκαλέσει στους πελάτες ZEO να έχουν εσφαλμένες πληροφορίες σχετικά με τις τρέχουσες αναθεωρήσεις αντικείμενο μετά την επανασύνδεση σε ένα διακομιστή βάσης δεδομένων.
- Updated οι «repozo --kill-old-on-πλήρης» επιλογή για να καταργήσετε τα αρχεία οποιασδήποτε «.Index» που αντιστοιχεί σε αντίγραφα ασφαλείας να αφαιρεθεί.
- Όταν τα αντικείμενα προστέθηκαν σε Savepoints και είτε το savepoint επαναφέρατε (https://bugs.launchpad.net/zodb/+bug/143560) ή η συναλλαγή ματαιώθηκε (https://mail.zope.org/ pipermail / zodb-dev / 2010-Ιούνιος / 013488.html) _p_oid και _p_jar μεταβλητές των αντικειμένων δεν είχαν εκκαθαριστεί, οδηγώντας σε surprizing λάθη.
- μεθόδους επέκτασης ZEO απέτυχε όταν ένας πελάτης επανασυνδέονται με μια αποθήκη. (Https://bugs.launchpad.net/zodb/+bug/143344)
- προστίθεται σε συναλλαγές που έγιναν αργότερα ματαιώθηκε μπορούσε να _p_changed ακόμη οριστεί (https://bugs.launchpad.net/zodb/+bug/615758) αντικείμενα.
- διευκρίνισε την τιμή επιστροφής για lastTransaction στην περίπτωση που δεν υπάρχουν οποιεσδήποτε συναλλαγές. Τώρα, μια σειρά από 8 μηδενικά (γνωστός και ως & quot? Z64 & quot?). Καθορίζεται
- Κατά τη χρήση πολλαπλών βάσεων δεδομένων, λειτουργίες της μνήμης cache-διαχείρισης σε μια σύνδεση, cacheMinimize και cacheGC, δεν εφαρμόστηκαν σε subconnections.
- Ρύθμιση _p_changed σε μια άμορφη μάζα τρια γράφει πραγματικά τίποτα προκάλεσε το σφάλμα. (Https://bugs.launchpad.net/zodb/+bug/440234)
- Η διεξοδική λειτουργία του fstest ήταν σπασμένα. (Https://bugs.launchpad.net/zodb/+bug/475996)
- ταυτότητες αντικειμένου δημιουργούνται σε ένα savepoint που επανέρχεται wren't να επαναχρησιμοποιηθούν. (Https://bugs.launchpad.net/zodb/+bug/588389)
- Logrotation / repoening μέσω ενός σήματος SIGUSR2 δεν υλοποιήθηκε. (Https://bugs.launchpad.net/zodb/+bug/143600) (δεν δοκιμάστηκε στα παράθυρα.)
Τι είναι καινούργιο στην έκδοση 3.10.0 Beta 6:
- εξόδους της διαδικασίας ή κλείνει τη βάση δεδομένων θα μπορούσε να προκαλέσει ZEO κρύπτες εσφαλμένων δεδομένων οφείλεται σε ένα πρόβλημα στον τρόπο invalidations υποβλήθηκαν σε επεξεργασία.
- συνδέσεις βάσης δεδομένων δεν αναιρεί καταχωρήσεις της μνήμης cache όταν τα σφάλματα των συγκρούσεων τέθηκαν σε απάντηση λάθη checkCurrentSerialInTransaction. Κανονικά, αυτό δεν θα πρέπει να είναι ένα πρόβλημα, δεδομένου ότι θα πρέπει να υπάρχει σε εκκρεμότητα invalidations για αυτά τα αναγνωριστικά που θα προκαλέσει το αντικείμενο που πρέπει να ακυρωθεί. Υπήρξαν προβλήματα με ZEO επίμονη διαχείριση μνήμης cache που έχουν προκαλέσει παλιών δεδομένων να παραμείνει στη μνήμη cache. (Είναι πιθανό ότι η τελευταία από αυτές απευθύνονταν στη 3.10.0b5.) Καταρρίπτει διαβάσει τα δεδομένα, όταν υπάρχει ένα σφάλμα σύγκρουση παρέχει κάποια επιπλέον ασφάλεια.
- Η διασύνδεση, ZODB.interfaces.IStorage ήταν εσφαλμένη. Η μέθοδος κατάστημα δεν πρέπει ποτέ να επιστρέψει μια σειρά από OID και σειριακή ζεύγη.
Απαιτήσεις :
- Python
Τα σχόλια δεν βρέθηκε