Détails logiciels:
Version: 6.2.32 Mise à jour
Date de transfert: 27 Apr 17
Licence: Gratuit
Popularité: 58
Berkeley DB (libdb) est une boîte à outils programmée qui fournit un support de base de données intégré pour les applications traditionnelles et client / serveur.
Berkeley DB comprend des méthodes d'accès à l'enregistrement B + tree, queue, hash linéaire étendu, fixe et variable, transactions, verrouillage, journalisation, mise en cache de la mémoire partagée, récupération de la base de données et réplication pour les systèmes hautement disponibles.
Quoi de neuf dans cette version:
- Nouvelles fonctionnalités:
- Ajout d'un autre format de stockage appelé blobs, ce qui améliore les performances de lecture et de mise à jour des éléments de données très importants. Interface disponible via les API C, C #, C ++ et Java. [# 19332]
- Ajout de plusieurs pragmas à la couche SQL qui configure et donne des informations sur les applications HA SQL, telles que le nombre de sites dans le groupe de réplication ou la configuration de la priorité d'élection d'un site. [# 20227]
- Ajout d'un drapeau BDBSQL_CONCURRENT_CONNECTIONS à l'API SQL pour autoriser le verrouillage de la base de données à être désactivé. Utile quand il n'y a que des lecteurs dans la base de données. [# 20928]
- Lorsque vous exécutez Replication Manager dans plusieurs processus, si le processus de réplication est terminé et qu'il existe un processus subordonné disponible, le processus subordonné prend automatiquement en charge le processus de réplication. [# 20969]
- Ajout de vues de réplication / fonctionnalité de réplication partielle. Fonctionnalité disponible via les API C, C #, C ++ et Java. [# 21062]
- Les améliorations DPL pour travailler avec JDK7. [# 21101]
- Ajout d'un support de cryptage pour le pilote Android JDBC. [# 21129]
- Les applications qui utilisent l'isolement d'instantané et les transactions à long terme seront, dans bien des cas, voir une utilisation réduite du cache. Cela conduit à une amélioration des performances en réduisant le besoin de fichiers temporaires de congélation. [# 21324]
- Ajout des champs de stat mpool st_mvcc_resued, st_oddfsize_detect et st_oddfsize_resolve à C #. [# 21325]
- Ajout du partitionnement de la base de données de support dans les API C #. [# 21474]
- Ajout d'un cache par thread pour la structure du guichet qui stocke les identificateurs de verrouillage, tels que les identifiants de transaction ou l'identifiant de casier renvoyé par DB_ENV- & gt; lock_id (). Cela peut améliorer la concurrence des programmes utilisant DB_ENV- & gt; set_thread_count (). [# 21591]
- Utilitaires de port vers Windows Mobile. [# 21636]
- Exposez 3 nouvelles valeurs de stat de repmgr et une nouvelle valeur de drapeau DB_REPMGR_SITE à C # et aux API Java. [# 21687]
- Ajout d'un support pour la localisation de messages d'erreur dans des caractères UTF-8 et ajouté une section sur la façon de créer une bibliothèque localisée et un exemple d'ICU dans le Guide de référence du programmeur. [# 21280]
- Modifications de l'environnement de la base de données:
- Les espaces blancs redondants sont maintenant ignorés dans les lignes DB_CONFIG relatives aux répertoires. [# 20158]
- Correction de bugs lors de la tentative d'ouverture de fichiers non DB comme s'ils étaient des bases de données. Si le cryptage était actif, une erreur d'assertion se produirait. Si le cryptage n'était pas actif, le message d'erreur "BDB0178 Crypted database: no flag encryption & quot; Impliquerait incorrectement qu'un mot de passe était requis. [# 21408]
- Modifications de la méthode d'accès:
- Correction d'un bug qui pourrait allouer une page de données de tas dans une région après que la création de région a été annulée. [# 20939]
- Correction d'un bug dans le tas qui l'empêchait de travailler dans des configurations mixtes-endiennes. [# 21016]
- Améliorez les performances de recherche pour la méthode d'accès Btree lorsque les clés partagent un préfixe commun. [# 21216]
- Correction de bugs avec l'échange d'octets de pages de tas. Maintenant, les bases de données de tas peuvent être déplacées entre les architectures little-endian et big-endian. [# 21387]
- Correction d'une condition de course où un curseur dans le processus de nettoyage a pu être consulté par un autre fil de contrôle. [# 21714]
- La duplication de la position d'un curseur sur une base de données partitionnée n'entraînera plus de blocage. [# 22195]
- Correction d'une erreur d'assertion lors de la fermeture d'un curseur joint. [# 22398]
- Changements d'API:
- Modifiez le cachesize de la séquence et le paramètre delta de DB_SEQUENCE- & gt; obtenez le type u_int32_t au lieu de int32_t. [# 21552]
- Correction d'un bug avec DB_MPOOLFILE- & gt; set_maxsize API. Dans les versions précédentes, le fichier a été autorisé à augmenter une page plus grande que la limite configurée. [# 21867]
- Modifiez la fonction de comparaison dans DB- & gt; set_bt_compare, DB- & gt; set_dup_compare et DB- & gt; set_h_compare pour accepter un paramètre 'size_t * locp' supplémentaire. [# 22235]
- Changements d'API spécifiques à SQL:
- Ajouté PRAGMA large_record_opt, qui, lorsqu'il est activé, peut améliorer les performances de lecture et de mise à jour de très grands enregistrements. [# 19332]
- Ajout d'un support pour l'accès multi-processus à la base de données dans les applications SQL HA. [# 21050]
- Les bases de données en mémoire peuvent maintenant être créées sans passer l'indicateur SQLITE_OPEN_CREATE. [# 21456]
- Réparez un bug dans l'API SQL où le réglage de la taille de la page à 64 K provoquerait une erreur. Également corrigé une fuite de mémoire associée dans la sauvegarde en ligne SQL. [# 21460]
- Ajoutez bgdbsql_log_buffer pragma pour permettre le réglage de la taille du tampon de journal. [# 21471]
- Mise à niveau SQLite vers la version 3.7.13. [# 21641]
- Correction d'une fuite mutex avec un accès multi-accès à la base de données dans les applications SQL HA. [# 21714]
- Correction d'un bug qui pourrait provoquer l'échec de la création de jdbc sur ARM-Linux à l'aide de gnueabi gcc. [# 22123]
- Mise à niveau SQLite vers la version 3.7.16.2. [# 22349]
- Mise à niveau ADO.NET vers la version 1.0.85.0. [# 22405]
- Changements spécifiques à l'API Tcl:
- Supporte les API de stockage blob dans Tcl. [# 19332]
- Changements d'API spécifiques à Java:
- Correction d'un bug dans lequel EnvironmentConfig.setCreateDir () n'a pas correctement configuré l'environnement. [# 21127]
- Correction d'un bug dans lequel Database.verify () n'a pas correctement configuré le db. [# 22401]
- Correction d'un faux message d'erreur qui pourrait être imprimé lors de la création d'une transaction sur un client de réplication en Java. [# 21671]
- C #:
- Nettoyez plusieurs avertissements de compilation C #. [# 22285]
- Définitions de typemap SWIG corrigées pour l'interface C #. [# 18509]
- Modifications de réplication:
- Correction de plusieurs pannes d'assertion qui pourraient résulter de l'utilisation de failchk et de la réplication. [# 19765]
- Fournir une erreur lorsque le site local défini lors de l'initialisation interne est incompatible avec une définition antérieure. [# 20870]
- Correction d'un bug dans lequel les clients de réplication ont été incorrectement vidés le journal lorsque le drapeau DB_TXN_WRITE_NOSYNC a été spécifié. [# 20964]
- Correction d'un bug où une invocation valide de la méthode DB_ENV- & gt; repmgr_start () échouerait après une invocation précédente qui fournissait une valeur de paramètre nthreads invalide. Une erreur BDB3640 était générée de manière incorrecte. [# 21289]
- Correction d'un bug dans lequel le calcul du nombre de concessions de crédit-bail requises a imposé qu'une transaction doit être présente sur une majorité stricte des sites de groupes de réplication. Il suffit qu'une transaction soit présente sur au moins la moitié des sites du groupe de réplication, ce qui réduit le nombre de bourses de location requises dans certains cas. [# 21329]
- Correction d'un problème de récupération sur le client où un point de contrôle incorrect a été sélectionné, ce qui a amené la récupération à un point incorrect. [# 21342]
- Correction d'un bug qui pourrait entraîner une panne suite à une nouvelle demande incorrecte sur un site qui vient de gagner une élection. [# 21344]
- Correction d'un bug dans lequel les journaux ne seraient jamais archivés s'il y avait 2 sites et différentes combinaisons d'échecs. [# 21448]
- Correction d'un bug où nous ne détetions pas le fait que DB_TXN_SNAPSHOT était utilisé avec un client HA. Les clients sont par définition uniquement lisibles, de sorte que les transactions instantanées ne sont pas autorisées. [# 21601]
- Correction d'un bug dans lequel la détermination du point de savoir si un site est pair ou non a été déterminée de manière incorrecte. [# 21722]
- Correction d'un bug dans lequel un maître du Replication Manager pourrait cesser de fonctionner après avoir accepté une liste de site d'appartenance groupée obsolète d'un autre site. [# 21804]
- Réduisez les flux de données multiples qui peuvent parfois se produire si les temps de réélection sont plus courts que le temps qu'il faut pour changer les fichiers journaux ou effectuer un point de contrôle sur un site client. [# 21843]
- Correction d'un bug qu'un site a été supprimé de manière inattendue à partir du groupe de réplication lorsque le groupe de réplication perd la confirmation de l'ancien maître d'ajouter le site lors d'une modification de base. [# 21875]
- Correction d'un bug dans lequel un site maître pourrait se bloquer lors de la suppression d'un site si le site supprimé ferme ses connexions avant que le maître ne termine ses étapes finales de l'opération. [# 22050]
- Correction d'un bug où une élection ne se produit jamais après la perte du maître lorsque les contrats de location de base sont utilisés. [# 22120]
- Modifications du système de verrouillage:
- Correction d'un bug pouvant provoquer un piège si un délai de verrouillage a eu lieu lors de l'ouverture d'une base de données. [# 21098]
- Correction d'un accrochage qui pourrait se produire s'il n'y avait plus d'espace pour les casiers. [# 21774]
- Correction d'une condition de course potentielle lors de la construction du graphique de détection de blocage qui, dans de rares conditions, pourrait entraîner une erreur d'adresse non valide. [# 22261]
- Modifications du sous-système d'enregistrement:
- Correction d'un bug que DB_ENV- & gt; log_get_config n'a pas fonctionné correctement lorsqu'il a été appelé avant DB_ENV- & gt; ouvrir. [# 21359]
- Modifications de sous-système de pool de mémoire:
- Correction d'un bug dans l'API DB_ENV- & gt; get_cache_max qui l'a amené à renvoyer une valeur incorrecte et un bogue dans l'API set_cachesize DB_ENV- & gt; qui a provoqué un comportement incorrect lors de la modification de la taille d'un cache existant. [# 21146]
- Correction d'une condition de course apparaissant lors de la tentative d'obtenir des informations sur un fichier et le fichier est étendu par le système d'exploitation. [# 21193]
- Messages d'erreur corrigés dans plusieurs fonctions de configuration du pool de mémoire. [# 21779]
- Correction de plusieurs éléments de fuite de mémoire identifiés par Purify runs. [# 22283]
- Modifications du sous-système Mutex:
- Correction d'une erreur de symbole indéfinie (MUTEX_IS_OWNED) lors de la configuration avec --enable-diagnostic --disable-mutexsupport. [# 21145]
- Corrigez un bug sur lequel nous n'appelions pas correctement les mutex dans les régions DB_PRIVATE lorsque l'application a configuré un alignement. [# 21491]
- Correction d'une condition de course entre DB_ENV- & gt; failchk () et l'attribution d'un mutex. [# 21796]
- Limite le nombre de spin mutex par défaut pour au plus 200, afin d'éviter une rotation excessive sur les systèmes avec des centaines d'hyperthreads. [# 21463]
- Modifications de la suite de tests:
- Ajout d'un support pour get / set_heapsize. [# 21510]
- Modifications d'utilité:
- Correction d'un bug où l'appel de DB- & gt; set_partition avec un groupe de clés a obligé les utilisateurs à garder le tableau de mémoire valide jusqu'à la création de la base de données. [# 18350]
- Correction d'un bug qui a provoqué la sauvegarde DB_ENV- & gt; arrête tôt si DB_BACKUP_FILES n'a pas été défini et un fichier non DB se trouvait dans le répertoire de données. [# 21076]
- Correction d'un problème avec l'option -B de db_hotbackup, qui pourrait provoquer une violation de segmentation. Aussi remplacé un message d'erreur peu clair. [# 21184]
- Correction de trois problèmes avec la sauvegarde db_hotbackup des journaux de transactions. Une sauvegarde à chaud n'a pas utilisé de répertoire de journal configuré, mais essayerait d'ouvrir les journaux dans la maison d'environnement. Le deuxième correctif a corrigé un chemin d'erreur, dans lequel la mémoire a été libérée par une mauvaise fonction, provoquant peut-être une erreur d'octet de garde. La troisième solution a résolu le problème selon lequel un mauvais message serait affiché lorsque "& quot;" & quot; A été spécifié. [# 21313]
- Correction d'un faux & quot; pas de tel fichier ou répertoire & quot; (ENOENT) lorsque vous exécutez db_archive dans un environnement avec une base de données de file d'attente vide. [# 21541]
- Correction de bugs dans le compactage des grandes touches dans les niveaux supérieurs des btrees. [# 21569]
- La plupart des utilitaires ne fonctionnent plus sur les clients de réplication qui sont automatiquement initialisés. L'erreur DB_REP_LOCKOUT est maintenant retournée. [# 21593]
- Correction d'une fuite de ressources dans la fonction db- & gt; verify () pour btrees. Le bogue ralentit la vérification et peut-être qu'elle perdure la mémoire. [## 21917]
- Supprime un risque potentiel lors du compactage de bases de données avec de nombreux doublons. [# 21975]
- Correction d'un bug sur lequel nous ne retournions pas d'erreur lors de la tentative de compactage d'une base de données de tas. [# 22063]
- Correction d'un bug dans la gestion des erreurs de db_log_verify qui provoquerait une violation de segmentation s'il n'y avait pas assez d'espace pour créer ses bases de données temporaires. [# 22187]
- Configuration, Documentation, Exemples d'applications, Modifications de portabilité et de modification
- Réparez un problème de configuration odbc qui causait une défaillance de la construction ODBC avec l'API SQL. [# 21490]
- Désactivé cryptage par défaut dans l'API SQL sur Linux, les options de construction complétées pour le cryptage dans SQL et SQL JDBC sur Linux, Windows et Android et le processus de construction mis à jour pour les trois plates-formes dans le Guide d'installation. [# 21872]
- Utiliser & quot; -xO2 & quot; Comme niveau d'optimisation par défaut pour le compilateur Sun Workshop. [# 22057]
- Corrigez un "opcode non pris en charge & quot; Erreur sur les plates-formes MIPS dont l'assembleur est par défaut le jeu d'instructions MIPS1. [# 22065]
- Fournir un moyen cohérent d'activer / désactiver le cryptage pour les bibliothèques db, sql, jdbc sur Unix. [# 22158]
- Ajout de l'option de compilation CONFIG_TEST lors de l'utilisation du mode debug dans le projet db_csharp Windows, pour être cohérent avec le projet db Windows. [# 22300]
- Modifications d'exemple:
- Port l'exemple C en vrac vers C ++. [# 19541]
- Corrections de bogues diverses:
- Correction d'une condition de course qui pourrait provoquer une panne si 2 processus ont ouvert la même base de données SQL en même temps. [# 21041]
- Correction d'une erreur d'assertance dans la fonction de comparaison btree qui a attribué la mémoire au mauvais fil. [# 21232]
- Correction d'une condition de course dans le code de verrouillage du cache SQL handle. [# 21265]
- Correction d'un bug dans le code SQL qui a empêché la création de la table lorsque BDBSQL_FILE_PER_TABLE est défini. [# 21417]
- Correction d'un bug que certains champs de la partition de la base de données DBT renvoyés de DB- & gt; get_partition_keys peuvent ne pas être initialisés. [# 21474]
- Correction d'un bug qui a empêché la création d'une sous-base de données sous le répertoire identifié dans DB- & gt; set_create_dir. [# 21603]
- Correction d'un bug où dbenv- & gt; mp_mtxcount n'a pas été utilisé correctement. [# 21768]
- Nettoyé quelques problèmes d'initialisation variable qui causaient des pannes sur Windows 64 bits. [# 21850]
- Amélioré le caractère aléatoire du générateur de fichier unique de 20 octets sur Windows. [# 22470]
- Correction d'une défaillance d'assertion possible dans la fonctionnalité XA Transaction Manager. [# 22450]
- Fonctions supprimées:
- Tornado 2.0 n'est pas pris en charge, et les versions VxWorks antérieures à 6.9 ne sont pas prises en charge. [# 21877]
Changements de l'API spécifiques
Ce qui est nouveau dans la version 12.1.6.0.20:
- Nouvelles fonctionnalités:
- Ajout d'un autre format de stockage appelé blobs, ce qui améliore les performances de lecture et de mise à jour des éléments de données très importants. Interface disponible via les API C, C #, C ++ et Java. [# 19332]
- Ajout de plusieurs pragmas à la couche SQL qui configure et donne des informations sur les applications HA SQL, telles que le nombre de sites dans le groupe de réplication ou la configuration de la priorité d'élection d'un site. [# 20227]
- Ajout d'un drapeau BDBSQL_CONCURRENT_CONNECTIONS à l'API SQL pour autoriser le verrouillage de la base de données à être désactivé. Utile quand il n'y a que des lecteurs dans la base de données. [# 20928]
- Lorsque vous exécutez Replication Manager dans plusieurs processus, si le processus de réplication est terminé et qu'il existe un processus subordonné disponible, le processus subordonné prend automatiquement en charge le processus de réplication. [# 20969]
- Ajout de vues de réplication / fonctionnalité de réplication partielle. Fonctionnalité disponible via les API C, C #, C ++ et Java. [# 21062]
- Les améliorations DPL pour travailler avec JDK7. [# 21101]
- Ajout d'un support de cryptage pour le pilote Android JDBC. [# 21129]
- Les applications qui utilisent l'isolement d'instantané et les transactions à long terme seront, dans bien des cas, voir une utilisation réduite du cache. Cela conduit à une amélioration des performances en réduisant le besoin de fichiers temporaires de congélation. [# 21324]
- Ajout des champs de stat mpool st_mvcc_resued, st_oddfsize_detect et st_oddfsize_resolve à C #. [# 21325]
- Ajout du partitionnement de la base de données de support dans les API C #. [# 21474]
- Ajout d'un cache par thread pour la structure du guichet qui stocke les identificateurs de verrouillage, tels que les identifiants de transaction ou l'identifiant de casier renvoyé par DB_ENV- & gt; lock_id (). Cela peut améliorer la concurrence des programmes utilisant DB_ENV- & gt; set_thread_count (). [# 21591]
- Utilitaires de port vers Windows Mobile. [# 21636]
- Exposez 3 nouvelles valeurs de stat de repmgr et une nouvelle valeur de drapeau DB_REPMGR_SITE à C # et aux API Java. [# 21687]
- Ajout d'un support pour la localisation de messages d'erreur dans des caractères UTF-8 et ajouté une section sur la façon de créer une bibliothèque localisée et un exemple d'ICU dans le Guide de référence du programmeur. [# 21280]
- Modifications de l'environnement de la base de données:
- Les espaces blancs redondants sont maintenant ignorés dans les lignes DB_CONFIG relatives aux répertoires. [# 20158]
- Correction de bugs lors de la tentative d'ouverture de fichiers non DB comme s'ils étaient des bases de données. Si le cryptage était actif, une erreur d'assertion se produirait. Si le cryptage n'était pas actif, le message d'erreur "BDB0178 Crypted database: no flag encryption & quot; Impliquerait incorrectement qu'un mot de passe était requis. [# 21408]
- Modifications de la méthode d'accès:
- Correction d'un bug qui pourrait allouer une page de données de tas dans une région après que la création de région a été annulée. [# 20939]
- Correction d'un bug dans le tas qui l'empêchait de travailler dans des configurations mixtes-endiennes. [# 21016]
- Améliorez les performances de recherche pour la méthode d'accès Btree lorsque les clés partagent un préfixe commun. [# 21216]
- Correction de bugs avec l'échange d'octets de pages de tas. Maintenant, les bases de données de tas peuvent être déplacées entre les architectures little-endian et big-endian. [# 21387]
- Correction d'une condition de course où un curseur dans le processus de nettoyage a pu être consulté par un autre fil de contrôle. [# 21714]
- La duplication de la position d'un curseur sur une base de données partitionnée n'entraînera plus de blocage. [# 22195]
- Correction d'une erreur d'assertion lors de la fermeture d'un curseur joint. [# 22398]
- Changements d'API:
- Modifiez le cachesize de la séquence et le paramètre delta de DB_SEQUENCE- & gt; obtenez le type u_int32_t au lieu de int32_t. [# 21552]
- Correction d'un bug avec DB_MPOOLFILE- & gt; set_maxsize API. Dans les versions précédentes, le fichier a été autorisé à augmenter une page plus grande que la limite configurée. [# 21867]
- Modifiez la fonction de comparaison dans DB- & gt; set_bt_compare, DB- & gt; set_dup_compare et DB- & gt; set_h_compare pour accepter un paramètre 'size_t * locp' supplémentaire. [# 22235]
- Changements d'API spécifiques à SQL:
- Ajouté PRAGMA large_record_opt, qui, lorsqu'il est activé, peut améliorer les performances de lecture et de mise à jour de très grands enregistrements. [# 19332]
- Ajout d'un support pour l'accès multi-processus à la base de données dans les applications SQL HA. [# 21050]
- Les bases de données en mémoire peuvent maintenant être créées sans passer l'indicateur SQLITE_OPEN_CREATE. [# 21456]
- Réparez un bug dans l'API SQL où le réglage de la taille de la page à 64 K provoquerait une erreur. Également corrigé une fuite de mémoire associée dans la sauvegarde en ligne SQL. [# 21460]
- Ajoutez bgdbsql_log_buffer pragma pour permettre le réglage de la taille du tampon de journal. [# 21471]
- Mise à niveau SQLite vers la version 3.7.13. [# 21641]
- Correction d'une fuite mutex avec un accès multi-accès à la base de données dans les applications SQL HA. [# 21714]
- Correction d'un bug qui pourrait provoquer l'échec de la création de jdbc sur ARM-Linux à l'aide de gnueabi gcc. [# 22123]
- Mise à niveau SQLite vers la version 3.7.16.2. [# 22349]
- Mise à niveau ADO.NET vers la version 1.0.85.0. [# 22405]
- Changements spécifiques à l'API Tcl:
- Supporte les API de stockage blob dans Tcl. [# 19332]
- Changements d'API spécifiques à Java:
- Correction d'un bug dans lequel EnvironmentConfig.setCreateDir () n'a pas correctement configuré l'environnement. [# 21127]
- Correction d'un bug dans lequel Database.verify () n'a pas correctement configuré le db. [# 22401]
- Correction d'un faux message d'erreur qui pourrait être imprimé lors de la création d'une transaction sur un client de réplication en Java. [# 21671]
- C #:
- Nettoyez plusieurs avertissements de compilation C #. [# 22285]
- Définitions de typemap SWIG corrigées pour l'interface C #. [# 18509]
- Modifications de réplication:
- Correction de plusieurs pannes d'assertion qui pourraient résulter de l'utilisation de failchk et de la réplication. [# 19765]
- Fournir une erreur lorsque le site local défini lors de l'initialisation interne est incompatible avec une définition antérieure. [# 20870]
- Correction d'un bug dans lequel les clients de réplication ont été incorrectement vidés le journal lorsque l'indicateur DB_TXN_WRITE_NOSYNC a été spécifié. [# 20964]
- Correction d'un bug où une invocation valide de la méthode DB_ENV- & gt; repmgr_start () échouerait après une invocation précédente qui fournissait une valeur de paramètre nthreads invalide. Une erreur BDB3640 était générée de manière incorrecte. [# 21289]
- Correction d'un bug dans lequel le calcul du nombre de concessions de crédit-bail requises a imposé qu'une transaction doit être présente sur une majorité stricte des sites de groupes de réplication. Il suffit qu'une transaction soit présente sur au moins la moitié des sites du groupe de réplication, ce qui réduit le nombre de bourses de location requises dans certains cas. [# 21329]
- Correction d'un problème de récupération sur le client où un point de contrôle incorrect a été sélectionné, ce qui a amené la récupération à un point incorrect. [# 21342]
- Correction d'un bug qui pourrait entraîner une panne suite à une nouvelle demande incorrecte sur un site qui vient de gagner une élection. [# 21344]
- Correction d'un bug dans lequel les journaux ne seraient jamais archivés s'il y avait 2 sites et différentes combinaisons d'échecs. [# 21448]
- Correction d'un bug où nous ne détetions pas le fait que DB_TXN_SNAPSHOT était utilisé avec un client HA. Les clients sont par définition uniquement lisibles, de sorte que les transactions instantanées ne sont pas autorisées. [# 21601]
- Correction d'un bug dans lequel la détermination du point de savoir si un site est pair ou non a été déterminée de manière incorrecte. [# 21722]
- Correction d'un bug dans lequel un maître du Replication Manager pourrait cesser de fonctionner après avoir accepté une liste de site d'appartenance groupée obsolète d'un autre site. [# 21804]
- Réduisez les flux de données multiples qui peuvent parfois se produire si les temps de réélection sont plus courts que le temps qu'il faut pour changer les fichiers journaux ou effectuer un point de contrôle sur un site client. [# 21843]
- Correction d'un bug qu'un site a été supprimé de manière inattendue à partir du groupe de réplication lorsque le groupe de réplication perd la confirmation de l'ancien maître d'ajouter le site lors d'une modification de base. [# 21875]
- Correction d'un bug dans lequel un site maître pourrait se bloquer lors de la suppression d'un site si le site supprimé ferme ses connexions avant que le maître ne termine ses étapes finales de l'opération. [# 22050]
- Correction d'un bug où une élection ne se produit jamais après la perte du maître lorsque les contrats de location de base sont utilisés. [# 22120]
- Modifications du système de verrouillage:
- Correction d'un bug pouvant provoquer un piège si un délai de verrouillage a eu lieu lors de l'ouverture d'une base de données. [# 21098]
- Correction d'un accrochage qui pourrait se produire s'il n'y avait plus d'espace pour les casiers. [# 21774]
- Correction d'une condition de course potentielle lors de la construction du graphique de détection de blocage qui, dans de rares conditions, pourrait entraîner une erreur d'adresse non valide. [# 22261]
- Modifications du sous-système d'enregistrement:
- Correction d'un bug que DB_ENV- & gt; log_get_config n'a pas fonctionné correctement lorsqu'il a été appelé avant DB_ENV- & gt; ouvrir. [# 21359]
- Modifications de sous-système de pool de mémoire:
- Correction d'un bug dans l'API DB_ENV- & gt; get_cache_max qui l'a amené à renvoyer une valeur incorrecte et un bogue dans l'API set_cachesize DB_ENV- & gt; qui a provoqué un comportement incorrect lors de la modification de la taille d'un cache existant. [# 21146]
- Correction d'une condition de course apparaissant lors de la tentative d'obtenir des informations sur un fichier et le fichier est étendu par le système d'exploitation. [# 21193]
- Messages d'erreur corrigés dans plusieurs fonctions de configuration du pool de mémoire. [# 21779]
- Correction de plusieurs éléments de fuite de mémoire identifiés par Purify runs. [# 22283]
- Modifications du sous-système Mutex:
- Correction d'une erreur de symbole indéfinie (MUTEX_IS_OWNED) lors de la configuration avec --enable-diagnostic --disable-mutexsupport. [# 21145]
- Corrigez un bug sur lequel nous n'appelions pas correctement les mutex dans les régions DB_PRIVATE lorsque l'application a configuré un alignement. [# 21491]
- Correction d'une condition de course entre DB_ENV- & gt; failchk () et l'attribution d'un mutex. [# 21796]
- Limite le nombre de spin mutex par défaut pour au plus 200, afin d'éviter une rotation excessive sur les systèmes avec des centaines d'hyperthreads. [# 21463]
- Modifications de la suite de tests:
- Ajout d'un support pour get / set_heapsize. [# 21510]
- Modifications d'utilité:
- Correction d'un bug où l'appel de DB- & gt; set_partition avec un groupe de clés a obligé les utilisateurs à garder le tableau de mémoire valide jusqu'à la création de la base de données. [# 18350]
- Correction d'un bug qui a provoqué la sauvegarde DB_ENV- & gt; arrête tôt si DB_BACKUP_FILES n'a pas été défini et un fichier non DB se trouvait dans le répertoire de données. [# 21076]
- Correction d'un problème avec l'option -B de db_hotbackup, qui pourrait provoquer une violation de segmentation. Aussi remplacé un message d'erreur peu clair. [# 21184]
- Correction de trois problèmes avec la sauvegarde db_hotbackup des journaux de transactions. Une sauvegarde à chaud n'a pas utilisé de répertoire de journal configuré, mais essayerait d'ouvrir les journaux dans la maison d'environnement. Le deuxième correctif a corrigé un chemin d'erreur, dans lequel la mémoire a été libérée par une mauvaise fonction, provoquant peut-être une erreur d'octet de garde. La troisième solution a résolu le problème selon lequel un mauvais message serait affiché lorsque "& quot;" & quot; A été spécifié. [# 21313]
- Correction d'un faux & quot; pas de tel fichier ou répertoire & quot; (ENOENT) lorsque vous exécutez db_archive dans un environnement avec une base de données de file d'attente vide. [# 21541]
- Correction de bugs dans le compactage des grandes touches dans les niveaux supérieurs des btrees. [# 21569]
- La plupart des utilitaires ne fonctionnent plus sur les clients de réplication qui sont automatiquement initialisés. L'erreur DB_REP_LOCKOUT est maintenant retournée. [# 21593]
- Correction d'une fuite de ressources dans la fonction db- & gt; verify () pour btrees. Le bogue ralentit la vérification et peut-être qu'elle perdure la mémoire. [## 21917]
- Supprime un risque potentiel lors du compactage de bases de données avec de nombreux doublons. [# 21975]
- Correction d'un bug sur lequel nous ne retournions pas d'erreur lors de la tentative de compactage d'une base de données de tas. [# 22063]
- Correction d'un bug dans la gestion des erreurs de db_log_verify qui provoquerait une violation de segmentation s'il n'y avait pas assez d'espace pour créer ses bases de données temporaires. [# 22187]
- Configuration, Documentation, Exemples d'applications, Modifications de portabilité et de modification
- Réparez un problème de configuration odbc qui causait une défaillance de la construction ODBC avec l'API SQL. [# 21490]
- Désactivé cryptage par défaut dans l'API SQL sur Linux, les options de construction complétées pour le cryptage dans SQL et SQL JDBC sur Linux, Windows et Android et le processus de construction mis à jour pour les trois plates-formes dans le Guide d'installation. [# 21872]
- Utiliser & quot; -xO2 & quot; Comme niveau d'optimisation par défaut pour le compilateur Sun Workshop. [# 22057]
- Fixer un "opcode non pris en charge" & quot; Erreur sur les plates-formes MIPS dont l'assembleur est par défaut le jeu d'instructions MIPS1. [# 22065]
- Fournir un moyen cohérent d'activer / désactiver le cryptage pour les bibliothèques db, sql, jdbc sur Unix. [# 22158]
- Ajout de l'option de compilation CONFIG_TEST lors de l'utilisation du mode debug dans le projet db_csharp Windows, pour être cohérent avec le projet db Windows. [# 22300]
- Modifications d'exemple:
- Port l'exemple C en vrac vers C ++. [# 19541]
- Corrections de bogues diverses:
- Correction d'une condition de course qui pourrait provoquer une panne si 2 processus ont ouvert la même base de données SQL en même temps. [# 21041]
- Correction d'une erreur d'assertance dans la fonction de comparaison btree qui a attribué la mémoire au mauvais fil. [# 21232]
- Correction d'une condition de course dans le code de verrouillage du cache SQL handle. [# 21265]
- Correction d'un bug dans le code SQL qui empêchait la création de la table lorsque BDBSQL_FILE_PER_TABLE est défini. [# 21417]
- Correction d'un bug que certains champs de la partition de la base de données DBT renvoyés de DB- & gt; get_partition_keys peuvent ne pas être initialisés. [# 21474]
- Correction d'un bug qui a empêché la création d'une sous-base de données sous le répertoire identifié dans DB- & gt; set_create_dir. [# 21603]
- Correction d'un bug où dbenv- & gt; mp_mtxcount n'a pas été utilisé correctement. [# 21768]
- Nettoyé quelques problèmes d'initialisation variable qui causaient des pannes sur Windows 64 bits. [# 21850]
- Amélioré le caractère aléatoire du générateur de fichier unique de 20 octets sur Windows. [# 22470]
- Correction d'une défaillance d'assertion possible dans la fonctionnalité XA Transaction Manager. [# 22450]
- Fonctions supprimées:
- Tornado 2.0 n'est pas pris en charge, et les versions VxWorks antérieures à 6.9 ne sont pas prises en charge. [# 21877]
Changements de l'API spécifiques
Ce qui est nouveau dans la version 5.3.21:
- La première version 5.3 est sortie il y a quelques mois . L'un des principaux points forts a été la prise en charge de la plate-forme Android. 5.3.21 est la deuxième version. Il s'agit principalement d'une version de bugfix, mais elle comprend une fonctionnalité qui est potentiellement très intéressante, un support pour Oracle JDK7.
Commentaires non trouvées