Manage, Synchronize and Exchange Data

Quelles sont les nouveautés apportées par les packages de support de
SAP SQL Anywhere 17 ?

Résumé

Depuis la parution de SQL Anywhere 17, les 59 Support Packages (SP) publiés ont, en neuf ans, renforcé la sécurité, élargi la couverture plates-formes et modernisé les API, tout en livrant des dizaines d'améliorations moteur et d'outillage. On retiendra notamment : passage obligé à TLS 1.2 +, listes de chiffrements épurées, mises à jour OpenSSL/ICU récurrentes, OData compatible CORS, adoption de CommonCryptoLib sous Windows, diagnostics étendus (plan-cache, wide fetch), pilotes Node.js ≥ 12 et PHP 7.3, serveur MobiLink exclusivement 64 bits, support certifié de Windows 11/Server 2022, Red Hat 9 et des dernières versions macOS/iOS/Android. Le texte qui suit détaille ces apports par domaine fonctionnel.

1. Moteur, performances & concurrence

Résilience aux interblocages et parallélisme

plusieurs SP suppriment des autodeadlocks rares dans le pool de workers parallèles et lors des ALTER TABLE, via des corrections de verrous et de compteurs de pages.

Recherche fichiers et index plus rapide

une nouvelle routine Windows accélère les parcours de métadonnées et de statistiques, surtout sur disques mécaniques et grands dbspaces.

Wide fetch

l'API C dbcapi gère désormais les "wide fetches" (sqlany_fetch_absolute/next) avec comptage précis des lignes, ouvrant la voie à des clients analytiques batchés.

Stabilité des plans

repli automatique du shared-memory vers TCP local évite le thrashing du plan-cache quand service Windows et instance desktop tournent sous des identités différentes ; les serveurs perso ouvrent désormais un port loopback par défaut.

Spatial & « round-earth »

crash sub-milliseconde dans ST_Intersection (SRID 4326) éliminé ; correction d'assertions « Field unexpected during compilation » dans certaines sous-requêtes corrélées.

Ce que cela signifie : DDL en ligne plus sûr, moins de défaillances dans les requêtes spatiales complexes et débit plus prévisible sur les charges fortement parallèles — sans changer de schéma.

2. Renforcement de la sécurité

TLS moderne obligatoire

dès le SP 1, min_tls_version passe à 1.2 et les suites RC4/SHA-1 ou sans PFS sont refusées ; un retour arrière explicite reste possible pour les très vieux clients.

Cadence OpenSSL & FIPS

la version non-FIPS migre de 1.0.2n à 1.1.1n ; la FIPS suit 1.0.2y.

Durcissement shared-memory

le build 7208 limite les objets mémoire partagée Windows au SID propriétaire ; les connexions multi-utilisateurs basculent automatiquement en TCP local.

Par défaut LDAP sur TLS

le client LDAP intégré exige désormais un canal chiffré, SSL v3 et antérieurs étant bloqués.

Bibliothèques tierces

zlib 1.2.12, libarchive 3.4.2, correctifs ICU ferment plusieurs CVE sur compression et collations.

Impact : les canaux chiffrés suivent les recommandations 2025 ; les administrateurs utilisant encore RC4/SHA-1 doivent régénérer certificats ou lister des suites modernes. Les déploiements full-shared-memory doivent prévoir -x tcpip(localonly=yes).

3. Administration & outils

Interactive SQL (dbisql)

liens d'aide migrés vers HTTPS, branding IQ actualisé, remontée d'erreurs ASE plus explicite.

dbunload & validation

prise en charge des tables « centaines de colonnes NULLables » ; dbvalid profite du parallélisme décrit §1.

Favoris & Landscape

Sybase Central conserve maintenant le metadata SAP Landscape, utile en cloud multi-tenant.

Compteurs PerfMon

les statistiques Windows passent en mémoire partagée sécurisée, supprimant un vecteur d'élévation tout en alimentant les dashboards.

En pratique : tâches quotidiennes (unload/reload, dépannage) plus rapides, sûres et fiables — MTTR réduit sur les grands parcs.

4. API & pilotes de développement

Écosystème Node.js

pilotes officiels de 0.10/0.12/4.x à 12, alignés sur les LTS et npm.

PHP 7.3

sqlanywhere-php 2.0.18 livre binaires 7.2–7.3 et corrige une boucle infinie lors du fetch de BLOB (impactait Perl, Python, Ruby via dbcapi).

Python

plus de crash à la fermeture de l'interpréteur avec connexions ouvertes ; mapping NULLTIMESTAMP WITH TIME ZONE rectifié.

DBCAPI

le wide fetch (cf. §1) autorise des ETL volumineux sans overhead ligne-à-ligne ; l'appel DESCRIBE est différé jusqu'à sqlany_get_column_info, réduisant le bavardage métadonnées.

À retenir : stacks modernes sans forks externes ; pipelines data-science gros volume à coût d'appel réduit.

5. Couche OData & services web

Configuration CORS

CREATE ODATA PRODUCER accepte AccessControlAllowOrigins/Methods, ouvrant l'accès direct depuis des SPA avec SSO.

Encodage ServiceRoot

clarification des règles URI ; les espaces doivent être %20, évitant des 404 subtils.

Robustesse « repeatable requests »

un redémarrage ne désactive plus le cache idempotent, assurant les retries mobiles.

Jetty upgrade

le conteneur servlet passe de 9.3 à 9.4.24, héritant correctifs HTTP/2 et CVE.

Bénéfices : les micro-services frontaux dialoguent sans proxy tortueux et les endpoints résistent aux attaques HTTP récentes.

6. Mobilité & MobiLink

Windows 64 bits uniquement

le serveur MobiLink abandonne les binaires 32 bits ; les clients de consolidation restent inchangés.

Option allow_expired_certs

les terminaux terrain continuent de synchroniser pendant le roulement PKI, sans coupure.

Durcissement Sync-Monitor

TLS par défaut (cf. §2) et mémoire optimisée lors de pics multi-locataires.

Ajout d'Oracle 19c et SQL Server 2019 comme bases consolidées

Pourquoi c'est important : flotte mobile ancienne ? Certificats qui expirent ? Moins de downtime. Et le 64 bits lève la limite d'espace d'adressage sur les grosses bases.

7. Certification plates-formes & déploiement

Systèmes d'exploitation

prise en charge officielle de Windows 11/Server 2022, RHEL 8/9, SUSE 15, Ubuntu 22.04 LTS, macOS Monterey/Big Sur, iOS 15 et Android 13.

Redistribuables VC++

les installeurs pointent vers le runtime unifié MSVC 2015–2022, fin des « vcruntime140.dll manquant ».

Images conteneur

bien que SAP n'émette pas d'image Docker officielle, plusieurs SP réparent les problèmes libarchive, rendant les images Alpine/RHEL reproductibles.

8. Dépréciations & changements de comportement

  • Bibliothèques client non-threadées et suites TLS sans PFS dépréciées (warning à l'exécution).
  • Déploiements pure shared-memory : opt-in requis ou migration TCP local.
  • MobiLink 32 bits, OpenSSL 0.9x et suites associées supprimés.
  • APIs obsolètes : synonymes FreeTDS retirés des sorties iqdsn.

9. Synthèse pour architectes

Ensemble, ces 59 Support Packages font évoluer SQL Anywhere 17 — initialement publié en 2016 — vers un moteur sécurisé, prêt pour TLS 1.3, compatible CI/CD modernes, parlant OData avec CORS, et tournant sur les OS desktop, serveur et mobiles actuels, tout en conservant la compacité qui a séduit les éditeurs OEM. Les environnements encore en GA ou premiers SP devraient planifier une montée de version progressive pour bénéficier des changements TLS, des correctifs OpenSSL et du verrouillage mémoire ; les risques de régression côté pilotes et plateformes sont minimes et bien documentés.

Prochaines actions recommandées

  • Évaluer le passage en SP récent en environnement test pour valider les ciphers TLS, le fallback shared-memory → TCP et les nouveaux drivers.
  • Mettre à jour certificats et politiques avant d'activer les défauts TLS 1.2 +.
  • Activer le wide fetch dans vos pipelines ETL/BI pour réduire la latence.
  • Migrer MobiLink vers le binaire 64 bits et tester l'option allow_expired_certs.
  • Refondre les images Docker en profitant des correctifs libarchive et des runtimes VC++ unifiés.