Google postupně zpřístupňuje českým uživatelům Režim AI (AI Mode), tj. nový režim vyhledávání založený na umělé inteligenci. Režim AI nabízí pokročilé uvažování, multimodalitu a možnost prozkoumat jakékoliv téma do hloubky pomocí dodatečných dotazů a užitečných odkazů na weby.
Programovací jazyk Python byl vydán v nové major verzi 3.14.0. Podrobný přehled novinek v aktualizované dokumentaci.
Bylo oznámeno, že Qualcomm kupuje Arduino. Současně byla představena nová deska Arduino UNO Q se dvěma čipy: MPU Qualcomm Dragonwing QRB2210, na kterém může běžet Linux, a MCU STM32U585 a vývojové prostředí Arduino App Lab.
Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.14.0. Podrobný přehled novinek v changelogu. Původně se jedná o Minecraftem inspirovaný Minetest v říjnu loňského roku přejmenovaný na Luanti.
Byla vydána nová stabilní verze 6.10 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.
Netwide Assembler (NASM) byl vydán v nové major verzi 3.00. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.
Linuxová distribuce Frugalware (Wikipedie) ke konci roku 2025 oficiálně končí.
Byla vydána nová verze 3.0.6 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP bude brzy k dispozici také na Flathubu.
Americký výrobce čipů AMD uzavřel s americkou společností OpenAI smlouvu na několikaleté dodávky vyspělých mikročipů pro umělou inteligenci (AI). Součástí dohody je i předkupní právo OpenAI na přibližně desetiprocentní podíl v AMD.
mysql> SELECT @@SESSION.sql_mode; +----------------------------------------------------------------+ | @@SESSION.sql_mode | +----------------------------------------------------------------+ | STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION | +----------------------------------------------------------------+ 1 row in set (0.00 sec) mysql> CREATE TABLE tfull ( -> id INT NOT NULL AUTO_INCREMENT, -> PRIMARY KEY (id) -> ) ENGINE=InnoDB AUTO_INCREMENT = 2147483647; Query OK, 0 rows affected (0.01 sec) mysql> INSERT INTO tfull VALUES(); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO tfull VALUES(); ERROR 1062 (23000): Duplicate entry '2147483647' for key 'PRIMARY' mysql> DROP TABLE tfull; Query OK, 0 rows affected (0.01 sec) mysql>Ale řekl bych, že chyba může být i jiného typu...
MariaDB [test]> CREATE TABLE tfull ( -> id INT NOT NULL AUTO_INCREMENT, -> PRIMARY KEY (id) -> ) ENGINE=InnoDB AUTO_INCREMENT = 2147483647; Query OK, 0 rows affected (0.06 sec) MariaDB [test]> INSERT INTO tfull VALUES(); Query OK, 1 row affected (0.06 sec) MariaDB [test]> INSERT INTO tfull VALUES(); ERROR 167 (22003): Out of range value for column 'id' at row 1 MariaDB [test]> alter table tfull modify id BIGINT; Query OK, 1 row affected (0.06 sec) Records: 1 Duplicates: 0 Warnings: 0 MariaDB [test]> INSERT INTO tfull VALUES(); Query OK, 1 row affected (0.05 sec) MariaDB [test]> DROP TABLE tfull; Query OK, 0 rows affected (0.06 sec)
Měl jsi si skusit ten insert provést 2×, pak by jsi si zjistil, že jsi problém nevyřešil, jen jsi vytvořil jiný (na to přijdeš hned, takže ho neodhalím ).
A když už jsme u MySQL(MariaDB) a zvolili jsme na začátku INT a ne BIGINT, tak možná je lepší postup viz níže, protože (teoreticky) 2× natáhneme čas dokud nám stačí 32 bit id a tabulka je výrazně menší rychlejší a nepotřebuje tolik paměti (pokud interval po naplnění byl měsíc, tak to nemá význam, ale pokud třeba tři roky, tak je to dost zásadní).
Já bych postupoval v tomto případě z mezikrokem takto:
mysql> CREATE TABLE tfull ( -> id INT NOT NULL AUTO_INCREMENT, -> PRIMARY KEY (id) -> ) ENGINE=InnoDB AUTO_INCREMENT = 2147483647; Query OK, 0 rows affected (0.02 sec) mysql> INSERT INTO tfull VALUES(); Query OK, 1 row affected (0.02 sec) mysql> INSERT INTO tfull VALUES(); ERROR 1062 (23000): Duplicate entry '2147483647' for key 'PRIMARY' mysql> ALTER TABLE tfull MODIFY id INT UNSIGNED auto_increment; Query OK, 1 row affected (0.03 sec) Records: 1 Duplicates: 0 Warnings: 0 mysql> INSERT INTO tfull VALUES(); Query OK, 1 row affected (0.01 sec) mysql> INSERT INTO tfull VALUES(); Query OK, 1 row affected (0.02 sec) mysql> ALTER TABLE tfull AUTO_INCREMENT = 4294967295; Query OK, 3 rows affected (0.01 sec) Records: 3 Duplicates: 0 Warnings: 0 mysql> INSERT INTO tfull VALUES(); Query OK, 1 row affected (0.02 sec) mysql> INSERT INTO tfull VALUES(); ERROR 1062 (23000): Duplicate entry '4294967295' for key 'PRIMARY' mysql> ALTER TABLE tfull MODIFY id BIGINT auto_increment; Query OK, 4 rows affected (0.02 sec) Records: 4 Duplicates: 0 Warnings: 0 mysql> INSERT INTO tfull VALUES(); Query OK, 1 row affected (0.01 sec) mysql> INSERT INTO tfull VALUES(); Query OK, 1 row affected (0.02 sec) mysql> SELECT id FROM tfull; +------------+ | id | +------------+ | 2147483647 | | 2147483648 | | 2147483649 | | 4294967295 | | 4294967296 | | 4294967297 | +------------+ 6 rows in set (0.00 sec) mysql> DROP TABLE tfull; Query OK, 0 rows affected (0.01 sec) mysql>
Při milionu insertů za sekundu bude třeba 300tisíc let prp dosažení 9223372036854775807 (BIGINT max.).
A případné zpracování takové hodnoty/typu (BIGINT UNSIGNED) způsobuje jen (drobné) problémy ve většině jazyků a i v samotném MySQL se už musí s tímto číslem pracovat s přetypováním (implicitní konverze čísel, zjednodušeně funguje jen do rozsahu BIGINT).
Tiskni
Sdílej: