Détails logiciels:
Version: 1.3.189 Mise à jour
Date de transfert: 28 Sep 15
Licence: Gratuit
Popularité: 244
Le package de téléchargement fourni avec une documentation de pointe et le code source de la base de données.
Ce qui est nouveau dans cette version:
- MVStore:. Dans certains cas, les blocs de données CLOB / BLOB ont été enlevés à tort lors de l'ouverture d'une base de données
- MVStore:. mises à jour qui ont affecté plusieurs lignes ont été ont été lents dans certains cas, si il y avait un index secondaire
- Utilisation de «runscript" avec autocommit désactivé pourrait entraîner un délai d'attente de verrou sur la table interne "SYS".
- Numéro 603: il y avait une fuite de mémoire lors de l'utilisation de H2 dans une application web. Apache Tomcat connecté un message d'erreur: ". L'application web ... créé un ThreadLocal avec la clé de Type [org.h2.util.DateTimeUtils $ 1]"
- Lorsque vous utilisez le MVStore, l'exécution d'un script SQL générer par l'outil Récupération d'un fichier PageStore a échoué avec un message d'erreur étrange (NullPointerException), maintenant un message d'erreur est affiché clairement.
- Numéro 605: la version 1.4.186 avec, ouvrir une base de données pourrait entraîner dans une boucle sans fin dans LobStorageMap.init .
- Les requêtes qui utilisent le même alias de table à plusieurs reprises travailler maintenant. Avant, la liste d'expression de sélection a été élargi de manière incorrecte. Exemple:. "Select * from a comme x, b comme x"
- La fonction MySQL de compatibilité "d'insertion ... sur la mise à jour de clé en double" ne fonctionnait pas avec un schéma par défaut.
- Numéro 599:. la condition "en (x, y)" ne pouvait pas être utilisé dans la liste de sélection lors de l'utilisation de "group by"
- Le cache LIRS pourrait croître plus grande que la mémoire allouée.
- Une nouvelle mise en œuvre du système de fichiers qui ré-ouvre le fichier si elle a été fermée en raison de l'application d'appeler Thread.interrupt (). Nom du fichier préfixe "nouvelle tentative:". S'il vous plaît noter qu'il est fortement recommandé d'éviter d'appeler Thread.interrupt; cela est un problème pour les différentes bibliothèques, y compris Apache Lucene.
- MVStore: utiliser le système de fichier RandomAccessFile si le nom du fichier commence par "file:".
- Laissez DATEADD de prendre une longue valeur pour compte lors de la manipulation millisecondes.
- Lorsque vous utilisez MV_STORE = TRUE et le paramètre SET cache_size, la taille du cache a été mal réglée, de sorte qu'il a été effectivement 1024 fois plus petit que cela devrait être.
- Concurrent CREATE TABLE ... IF NOT EXISTS en présence d'MULTI_THREAD = TRUE pourrait lancer une exception.
- Correction d'un bug dans MVStore lors de la création de nombreuses tables temporaires, où l'on pourrait manquer d'identifiants de transaction.
- Ajout du support pour la fonction PostgreSQL STRING_AGG. Patch par Fred Aquiles.
- Correction d'un bug dans "jdbc: nioMemFS: h2" fonction isRoot (). En outre, la taille de page a été augmentée à 64 Ko.
Ce qui est nouveau dans la version 1.3.187:
- MVStore:. Dans certains cas, les blocs de données CLOB / BLOB ont été enlevés à tort lors de l'ouverture d'une base de données
- MVStore:. mises à jour qui ont affecté plusieurs lignes ont été ont été lents dans certains cas, si il y avait un index secondaire
- Utilisation de «runscript" avec autocommit désactivé pourrait entraîner un délai d'attente de verrou sur la table interne "SYS".
- Numéro 603: il y avait une fuite de mémoire lors de l'utilisation de H2 dans une application web. Apache Tomcat connecté un message d'erreur: ". L'application web ... créé un ThreadLocal avec la clé de Type [org.h2.util.DateTimeUtils $ 1]"
- Lorsque vous utilisez le MVStore, l'exécution d'un script SQL générer par l'outil Récupération d'un fichier PageStore a échoué avec un message d'erreur étrange (NullPointerException), maintenant un message d'erreur est affiché clairement.
- Numéro 605: la version 1.4.186 avec, ouvrir une base de données pourrait entraîner dans une boucle sans fin dans LobStorageMap.init .
- Les requêtes qui utilisent le même alias de table à plusieurs reprises travailler maintenant. Avant, la liste d'expression de sélection a été élargi de manière incorrecte. Exemple:. "Select * from a comme x, b comme x"
- La fonction MySQL de compatibilité "d'insertion ... sur la mise à jour de clé en double" ne fonctionnait pas avec un schéma par défaut.
- Numéro 599:. la condition "en (x, y)" ne pouvait pas être utilisé dans la liste de sélection lors de l'utilisation de "group by"
- Le cache LIRS pourrait croître plus grande que la mémoire allouée.
- Une nouvelle mise en œuvre du système de fichiers qui ré-ouvre le fichier si elle a été fermée en raison de l'application d'appeler Thread.interrupt (). Nom du fichier préfixe "nouvelle tentative:". S'il vous plaît noter qu'il est fortement recommandé d'éviter d'appeler Thread.interrupt; cela est un problème pour les différentes bibliothèques, y compris Apache Lucene.
- MVStore: utiliser le système de fichier RandomAccessFile si le nom du fichier commence par "file:".
- Laissez DATEADD de prendre une longue valeur pour compte lors de la manipulation millisecondes.
- Lorsque vous utilisez MV_STORE = TRUE et le paramètre SET cache_size, la taille du cache a été mal réglée, de sorte qu'il a été effectivement 1024 fois plus petit que cela devrait être.
- Concurrent CREATE TABLE ... IF NOT EXISTS en présence d'MULTI_THREAD = TRUE pourrait lancer une exception.
- Correction d'un bug dans MVStore lors de la création de nombreuses tables temporaires, où l'on pourrait manquer d'identifiants de transaction.
- Ajout du support pour la fonction PostgreSQL STRING_AGG. Patch par Fred Aquiles.
- Correction d'un bug dans "jdbc: nioMemFS: h2" fonction isRoot (). En outre, la taille de page a été augmentée à 64 Ko.
Ce qui est nouveau dans la version 1.3.186:
- MVStore: données importées de BLOB et CLOB parfois disparu. Ceci a été causé par un bogue dans la comparaison de ObjectDataType.
- Lecture d'un StreamStore lance maintenant une IOException si ne existe pas les données sous-jacente.
- MVStore:. si il ya une exception, tout en économisant, la boutique est maintenant dans tous les cas immédiatement fermé
- MVStore:. l'outil de vidage pourrait aller dans une boucle sans fin pour certains fichiers
- MVStore:. reprise pour une base de données avec de nombreuses entrées CLOB ou BLOB est maintenant beaucoup plus rapide
- Groupe par une sélection nom de la colonne alias cité n'a pas fonctionné. Exemple: sélectionnez 1 "a" du groupe dual par "a"
- mode Auto-serveur:. le nom d'hôte est maintenant enregistré dans le fichier de .lock.db
Ce qui est nouveau dans la version 1.3.185:
- MVStore: données importées de BLOB et CLOB parfois disparu. Ceci a été causé par un bogue dans la comparaison de ObjectDataType.
- Lecture d'un StreamStore lance maintenant une IOException si ne existe pas les données sous-jacente.
- MVStore:. si il ya une exception, tout en économisant, la boutique est maintenant dans tous les cas immédiatement fermé
- MVStore:. l'outil de vidage pourrait aller dans une boucle sans fin pour certains fichiers
- MVStore:. reprise pour une base de données avec de nombreuses entrées CLOB ou BLOB est maintenant beaucoup plus rapide
- Groupe par une sélection nom de la colonne alias cité n'a pas fonctionné. Exemple: sélectionnez 1 "a" du groupe dual par "a"
- mode Auto-serveur:. le nom d'hôte est maintenant enregistré dans le fichier de .lock.db
Ce qui est nouveau dans la version 1.3.182:
- MVStore: messages d'erreur améliorés et l'exploitation forestière; une amélioration du comportement si il ya une erreur lors de la sérialisation d'objets.
- OSGi:. les paquets MVStore sont maintenant exportés
- Avec l'option MVStore, lors de l'utilisation de plusieurs threads qui créent en même temps des indices ou des tableaux, il était relativement facile d'obtenir un délai d'attente de verrou sur la table "SYS".
- Lorsque vous utilisez l'option multi-thread, l'exception "de chemin de code inattendue» pourrait être lancée, spécialement si l'option "analyze_auto" a été fixé à une valeur faible.
- Dans le mode serveur, lors de la lecture d'un CLOB ou BLOB, si la connexion a été fermée, une NullPointerException pourrait être jeté à la place d'une exception disant que la connexion est fermée.
- DatabaseMetaData.getProcedures et getProcedureColumns pourrait jeter une exception si une classe définie par l'utilisateur ne sont pas disponibles.
- Numéro 584:. le message d'erreur pour une définition de séquence de mal était mal
- CSV:. l'option de rowSeparator est plus soutenu, que la même chose peut être réalisé avec l'LineSeparator
- décroissant index sur les tables MVStore ne fonctionnait pas correctement.
- Numéro 579:. Les conditions sur le "_ROWID_" pseudo-colonne ne pas utiliser un index lorsque vous utilisez le MVStore
- Documentation fixe que «compensé» et «fetch» sont des mots clés aussi depuis la version 1.4.x.
- Le Long.MIN_VALUE pas pu être analysé pour l'auto-incrémentation (identité) colonnes.
outil
Ce qui est nouveau dans la version 1.3.181:
- Amélioration de la compatibilité MySQL en soutenant "l'utilisation schéma". Merci beaucoup à Karl Pietrzak pour le patch!
- L'écriture dans le fichier de trace est maintenant plus rapide, surtout avec le niveau de débogage.
- L'option de base de données "defrag_always = true" ne fonctionnait pas avec le MVStore.
- La séquence d'échappement JDBC {de la valeur 'ts} n'a pas interpréter la valeur comme un timestamp. La même chose pour {'valeur' d} (par date) et {t 'value'} (pour le temps). Merci à Lukas Eder pour signaler le problème.
- Fichier:. appui remplacer des fichiers existants en utilisant mouvement (actuellement non pour Windows)
- La déclaration "shutdown defrag" comprime maintenant la base de données (avec le MVStore). Cette commande permet de réduire considérablement la taille du fichier, et est relativement rapide, mais ne sont pas incrémentale.
- Le MVStore désormais compacte automatiquement la boutique en arrière-plan si il n'y a pas de lecture ou d'écriture activité, qui devrait (après un certain temps, parfois une minute environ) de réduire la taille du fichier. Ce travail est toujours en cours, commentaires sont les bienvenus!
- Changer la valeur par défaut de PAGE_SIZE 2048 à 4096 pour correspondre plus étroitement la plupart des systèmes de fichiers taille de bloc. (PageStore seulement; l'MVStore déjà utilisé 4096)
Abstraction
Ce qui est nouveau dans la version 1.3.180:
- MVStore: la boutique est maintenant auto-compacté automatiquement jusqu'à un certain point, pour éviter de très grandes tailles de fichiers. Cette zone est encore en cours.
- Séquences de tables temporaires (incrémentation automatique ou d'identité colonnes) ont persisté inutilement dans le fichier de base de données, et ne sont pas supprimés lorsque la réouverture de la base de données.
- MVStore: un IndexOutOfBoundsException pourrait parfois se produire lorsque MVMap.openVersion accédant simultanément à la boutique .
- Le cache LIRS maintenant re-taille de la carte de hachage interne si nécessaire.
- persistent option historique de la session dans la console de H2.
- Ajouter client-info propriété pour obtenir le nombre de serveurs actuellement dans le cluster et les serveurs qui sont disponibles.
- Correction d'un bug à changer le mot de passe crypté DB qui a gardé le handle de fichier ouvert lorsque le mauvais mot de passe a été fourni.
Ce qui est nouveau dans la version 1.3.179:
- Les requêtes récursives avec de nombreuses lignes de résultat (plus que le réglage "max_memory_rows") ne fonctionnent pas correctement.
- La licence a changé de MPL 2.0 + EPL 1.0.
- MVStore: tables temporaires de jeux de résultats pourrait survivre ré-ouverture d'une base de données, ce qui pourrait entraîner une ClassCastException .
- Numéro 566: MVStore: unique, indices qui ont été créés par la suite ne fonctionnait pas correctement, si il y avait plus de 5000 lignes de la table .
- MVStore:. la création d'index secondaires sur les grands résultats de tables en lignes manquantes dans l'indice
- Métadonnées:. le mot de passe de tables liées est maintenant visibles pour les utilisateurs d'administration
- Pour Windows, URL de la forme de base de données "jdbc: h2: / test". où considérée relative et n'a pas fonctionné, sauf si la propriété système "h2.implicitRelativePath" a été utilisé
- de Windows: utilisation d'un répertoire de base de "C: /". similaire et ne fonctionnent pas comme prévu
- spécification Suivre JDBC sur les procédures métadonnées, utilisez P0 que le type de procédure de retour.
- Numéro 531:. IDENTITÉ ignoré pour la colonne ajoutée
- FileSystem: améliorer la compatibilité exception de lancer avec JDK
- Indice spatiale: ajuster les coûts de sorte que nous ne utilisons l'index spatial si la requête ne contient pas un opérateur croise .
- Correction blocage multi-thread en utilisant une vue qui inclut une TableFunction.
- Correction d'un bug à diviser très-petit nombre de BigDecimal.
Ce qui est nouveau dans la version 1.3.176:
- Le fichier méthode «feuilleton» de verrouillage est plus documenté, car il ne sera pas disponible dans la version 1.4.
- La méthode statique Csv.getInstance () a été supprimée. Utilisez le constructeur public à la place.
- Le nom d'utilisateur par défaut pour le script, RunScript, Shell et CreateCluster outils ne sont plus "sa", mais une chaîne vide.
- La trace de la pile de l'exception "L'objet est déjà fermé" est plus connecté par défaut.
- Si une valeur d'un ensemble de résultat lui-même était un jeu de résultats, le résultat ne pouvait être lu une fois.
- Les contraintes de colonne sont également visibles dans les vues.
- L'octroi d'un droit supplémentaire à un rôle qui avait déjà un droit pour cette table ne fonctionnait pas.
- index spatial:. quelques bugs ont été corrigés (en utilisant des contraintes spatiales en vue, transférer des objets de géométrie sur TCP / IP, l'objet de la géométrie de retour est copié en cas de besoin)
- Numéro 551:. la documentation du type de données était incorrect
- Numéro 368: ON UPDATE clé en double ne fonctionne pas pour les insertions multi-lignes. Cas de test à partir Angus Macdonald.
- OSGi:. les javax.tools de forfait est désormais importés (en option)
- H2 Console:. auto-complétion est maintenant désactivé par défaut, mais il est un raccourci clavier (Ctrl + Espace)
- H2 Console:. auto-complétion ne fonctionne pas avec les états multi-ligne
- CLOB et BLOB n'a pas été immédiatement retirés après une restauration.
- Il est une nouvelle API globale qui prend en charge les types de données H2 internes (géométrie par exemple). Merci beaucoup à Nicolas Fortin pour le patch!
- les contraintes d'intégrité référentielle utilisaient parfois le mauvais indice, tels que la mise à jour une ligne dans la table référencée incorrecte échoué avec une violation de contrainte.
- La traduction polonaise a été complété et corrigé.
- Numéro 545:. inutile code en double a été retiré
- L'outil de profilage peut maintenant traiter des fichiers avec des décharges de filet complet.
données
Ce qui est nouveau dans la version 1.3.175:
- Les requêtes Union: les lignes dupliquées pourraient être renvoyés si les sous-requêtes contenaient "commande par" .
- Le type de données géométriques travaille maintenant pour les fonctions définies par l'utilisateur qui renvoient un jeu de résultats.
- compatibilité PostgreSQL:. l'pgserver ne fonctionnait pas correctement lorsque le paramètre database_to_upper a été fixé à false
- JdbcDataSource: l'setUrl méthodes et getUrl où ajouté comme alias pour setURL et getURL. Cela devrait résoudre les problèmes avec le (pool de connexion Hikari) HikariCP.
- Numéro 537: H2 Console:. lors du chargement du schéma, incorrecte appels JDBC où émis, ce qui a provoqué l'exception "PRECISION Colonne introuvable"
- Amélioration de traitement de la géométrie (question 535).
- Le classement peut maintenant être définie dans l'URL de base de données, même si il ya des tables de données, si la collection est le même que le classement actuel.
- Amélioration de la compatibilité Oracle CASE QUAND et décoder.
- La déclaration "tomber tous les objets" ne fonctionnait pas si une table dépend de vue par l'intermédiaire d'une contrainte.
- Subqueries ou vues avec «l'ordre par" une expression d'alias pas pu être exécutée en raison d'une régression introduite dans la version 1.3.174.
Ce qui est nouveau dans la version 1.3.174:
- Amélioration index spatial et le type de données.
- Numéro 467:. OSGi chargeur de classes (de capacité à créer référence à la classe ClassLoader dans d'autres, par exemple dans un autre bundle OSGi)
- "group by" les requêtes qui contiennent une sous-requête avec une fonction d'agrégation retourné un résultat erroné dans certains cas.
- Correction d'un bug dans les index uniques et non uniques qui manifestent que des résultats incorrects lorsque la clé de recherche était un type différent de la clé d'index de table de cardinal. par exemple où l'un était INT et l'autre était LONG
- Bug:. Les modifications apportées à la structure de base de données ne résultaient pas dans le cache de requête de session étant invalidé
- Nouvelle fonctionnalité de Davide Cavestro -. permettre l'utilisation de moteurs personnalisés objet Java de sérialisation sur une base per-DB
- Lorsque vous exécutez l'outil Recover sur de très grandes; bases de données (& gt 6G), certaines statistiques ont été rapportés avec les nombres négatifs .
- Ajouter une colonne CONTAINS_UNCOMMITTED à la table SESSIONS de métadonnées, afin de permettre la détection lorsque les sessions voyous créent de grandes transactions.
- Quelques petites corrections à l'appui de la géométrie, des correctifs par Nicolas Fortin.
- L'outil BNF et la fonctionnalité de saisie semi-automatique sont exportés dans OSGi, ce qui rend possible pour les éditeurs intelligente à faire autocomplete. Patch de Nicolas Fortin.
- Fix DROP tous les objets et DROP SCHEMA dans la présence de tables avec des dépendances de colonne calculée.
- Session-LOB temporaire peut parfois s'accumuler, augmentant la taille du fichier de DB jusqu'à l'arrêt. Maintenant, ils sont effacés à chaque validation au.
- Il y avait un bug où un indice de hachage avec plus d'une colonne serait silencieusement converti à un indice régulière. Il va maintenant lancer une exception.
- Statistiques Requête: nouvelle fonction qui stocke les dernières 100 requêtes SQL exécutées et leurs données de performance. Utile pour traquer mal l'exécution de requêtes.
- Correction d'un blocage LOB entre la lecture et mise à jour des colonnes LOB.
- Soutenir les # getClientInfoProperties JDBC DatabaseMetaData () méthode, dans le sens d'un retour à un résultat vide, afin de rendre WebSphere heureux.
- Faire serveur # openBrowser respecter la variable d'environnement $ navigateur. Ajouter "chrome" à la liste des navigateurs essayé. Patch de Felix Kaiser.
- Correction d'org.h2.util.ScriptReader lors de la manipulation des blocs de commentaires non fermées.
- Assurez org.h2.util.ScriptReader jeter un meilleur exception lors de la manipulation des scripts cassés qui génèrent de très grands comptes.
Ce qui est nouveau dans la version 1.3.173:
- Soutien déclarations vides qui contient juste un commentaire.
- Le mode serveur:. si il y avait une erreur lors de la lecture d'un LOB, la session a été fermée dans certains cas
- Numéro 463:. Nom du pilote et la version sont désormais identiques dans OsgiDataSourceFactory et JdbcDatabaseMetaData li>
- JaQu:. Le VARCHAR type de données est maintenant (nouveau) utilisés pour Cordes (plus de texte, sauf si explicitement défini)
- Pour les bases de données en mémoire, la création d'un index sur une colonne CLOB ou BLOB est plus supporté. Ceci est de simplifier la MVTableEngine.
- Nouvelle colonne "information_schema.tables.row_count_estimate".
- Numéro 468: trunc (horodatage) pourrait retourner la valeur erronée (+12 heures), et trunc (nombre) déclenchera une NullPointerException .
- Le tronc d'expression (nombre) a jeté une NullPointerException.
- Correction d'un blocage lorsque la mise à jour de LOB simultanément. Voir TestLob.testDeadlock2 ().
- Correction d'un blocage lié à de très grands ensembles de résultat temporaire.
- Ajout de l'option en ligne de commande "-list" à l'outil Shell pour que le résultat-list-mode peut être déclenché lors de la lecture d'un fichier.
Commentaires non trouvées