Asterinas (GitHub) je v Rustu napsané jádro operačního systému poskytující s jádrem Linux kompatibilní ABI. Vydána byla verze 0.18.0. První distribucí postavenou nad jádrem Asterinas je Asterinas NixOS. Nejedná se o oficiální projekt NixOS a nemá nic společného s NixOS Foundation.
Podrobně byla rozebrána kritická zranitelnost v nf_tables (CVE-2026-23111). Další lokální eskalace práv na Linuxu. V upstreamu byla zranitelnost již v únoru opravena. Ve zdrojovém kódu stačilo odstranit 1 vykřičník.
Evropská komise (EK) nařídila americké společnosti Meta, že musí znovu umožnit bezplatný přístup konkurenčním obecně zaměřeným asistentům umělé inteligence (AI) k WhatsAppu a tento přístup musí zachovat až do ukončení antimonopolního šetření. Opatření je dočasné a má zabránit vážnému a nevratnému poškození konkurence na rychle rostoucím trhu s obecnými AI asistenty. Meta uvedla, že se proti rozhodnutí odvolá.
Společnost Anthropic představila AI modely Claude Fable 5 a Claude Mythos 5. Claude Fable 5 je první model třídy Mythos určený pro běžné použití.
Byla vydána nová stabilní verze 3.24.0, tj. první z nové řady 3.24, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.
Na čem pracují vývojáři v Rustu napsaného mikrokernelového unixového operačního systému Redox OS (Wikipedie)? Byl publikován přehled vývoje za květen. Vypíchnout lze nový scheduler EEVDF nebo port desktopového prostředí Xfce na Redox OS.
Upozornění pro uživatele Asahi Linuxu: Neaktualizujte macOS na verzi 27 Golden Gate! Apple změnil detekci spouštěcích oddílů. Po aktualizaci oddíl s Asahi Linuxem nevidí. Snad je to jenom chyba.
Na webu konference Den IPv6, která se konala 4. června v Národní technické knihovně v pražských Dejvicích, jsou nyní k dispozici všechny prezentace (v PDF) a jejich videozáznamy. Organizátory konference byly i letos sdružení CESNET, CZ.NIC a NIX.CZ.
Byla vydána nová verze 9.1.0 správce sbírky fotografií digiKam (Wikipedie). Přehled novinek i s náhledy v oficiálním oznámení (NEWS). Vypíchnout lze vylepšené vyhledávání nebo podporu Pixel Motion Photos. Nejnovější digiKam je ke stažení také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.
Přihlaste svou přednášku na další ročník konference LinuxDays, který proběhne 3. a 4. října na FIT ČVUT v pražských Dejvicích. Příjem témat poběží do konce prázdnin, pak proběhne veřejné hlasování a následně sestavení programu.
Dobrý den, dejme tomu že mám tuto tabulku
CREATE TABLE n ( id int(11) NOT NULL auto_increment, datum datetime NOT NULL, stav tinyint(1) NOT NULL, PRIMARY KEY (id) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; INSERT INTO n (id, datum, stav) VALUES (1, '2009-01-25 13:26:56', 0), (2, '2009-01-25 13:27:47', 0), (3, '2009-01-25 13:28:23', 0), (4, '2009-01-25 13:28:35', 0), (5, '2009-01-25 13:28:46', 3), (6, '2009-01-25 13:29:01', 3), (7, '2009-01-25 13:29:10', 1), (8, '2009-01-25 14:48:42', 1), (9, '2009-01-25 14:48:48', 1), (10, '2009-01-25 14:48:56', 0), (11, '2009-01-25 14:49:02', 0), (12, '2009-01-25 14:49:08', 0);
To jsem zvědavý jestli takový select jde vytvořit.
Asi bych to řešil procedurou nebo triggerem a další tabulkou.
kdyby tam zadne id nechybelo (byly v rade za sebou) tak neco takoveho?
SELECT n2.id FROM n n1 JOIN n n2 ON (n2.id = n1.id + 1) WHERE n1.stav != n2.stav
Nebo bez ohledu na id jen podle data (id muze byt libovolne) a vcetne prvniho a posledniho radku
SELECT n2.id as id, n2.datum as datum, n2.stav as novy_stav
FROM n n1
RIGHT JOIN n n2 ON (
n2.datum = (SELECT min(datum) FROM n WHERE datum > n1.datum )
)
WHERE n1.stav != n2.stav
OR n2.datum = (SELECT min(datum) FROM n)
OR n2.datum = (SELECT max(datum) FROM n)
Jak píšeš, kdyby tam žádné nechybělo. Na to bych se nespoléhal....
No podle těch id to určitě dělat nebudu, protože nejdou po sobě, jinak to druhé řešení funguje tak jak má, ale je tam problém při větším množství záznamů,
jenom při 200 záznamech mi to trvá nějakých 30s. A když bych měl několik tisíc záznamů, tak už je ten dotaz nepoužitelný.
Máš tam patřičné indexy?
Nejsou tam.
Indexy Ti značně zrychlí selecty, ale zase na úkor insertům. Pokud se do té tabulky nevkládají data po stovkách řádcích, tak se nemusíš bát.
Sice je to OT, ale v Oracle XE by slo by to pomoci analickych dotazu. Postgres pre taky neco takovyho ma.
Nemohlo by (tedy v MySQL) fungovat něco jako:
set @m=-1;select id,datum,@m:=stav from (select * from n order by datum) t where stav<>@m;
Já vím, je to docela drsný 
Co se týká výše uvedeného řešení, tak podle mne nefunguje dobře, pokud by bylo více záznamů ve stejný čas.
SELECT * FROM n WHERE stav != predchozi_stavInsert by pak musel být proveden nadvakrát:
INSERT INTO n SET datum = NOW(), stav = $s, predchozi_stav = NULL;
SET @predchozi_stav = (
SELECT stav
FROM n
WHERE datum = (
SELECT MAX(datum)
FROM n
WHERE datum < NOW() AND predchozi_stav IS NOT NULL
)
);
UPDATE n
SET predchozi_stav = @predchozi_stav
WHERE id = LAST_INSERT_ID();
Samotné zjišťování předchozího stavu určitě půjde výrazně zjednodušit. Navíc pokud si ho vyplňující program může mezi jednotlivými inserty pamatovat, nebude to znamenat prakticky žádnou režii navíc (a stačí jeden insert).
Tiskni
Sdílej: