`stat` only provide timestamp down to second instead of nanosecond
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- C
- Sterne
- 40.4k
- Forks
- 8.1k
- Ø Merge
- 2 T. 13 Std.
- Gemergte PRs (30 T.)
- 96
Beschreibung
Description
Hi maintainer,
stat in php only provide presicion down to second, but it could be down to nanosecond.
File: abc.xyz
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 8,2 Inode: 6160531 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 0/root) Gid: ( 0/root)
Access: 2023-08-12 09:10:14.152726478 +0700
Modify: 2023-08-12 09:10:14.152726478 +0700
Change: 2023-08-12 09:10:14.152726478 +0700
Birth: 2023-08-12 09:10:14.152726478 +0700
[
...,
"atime" => 1691806214,
"mtime" => 1691806214,
"ctime" => 1691806214,
...
]
I'm aware that https://linux.die.net/man/2/stat does explain it Since kernel 2.5.48, the stat structure supports nanosecond resolution for the three file timestamp fields..
I was running into this problem today, run test need to ensure directory was created within 1s, which cannot be done if read from php stat.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Das Issue nennt PHPs stat API und Linux’ nanosekundenfähige stat-Zeitstempel, aber keine Quelldatei und keinen Test. Beginne damit, die PHP-Implementierung und vorhandenen Tests für stat-Zeitstempelfelder zu finden, und vergleiche anschließend deren Werte mit den Dateisystem-Zeitstempeln, die Linux stat anzeigt. Erledigt ist die Aufgabe, wenn PHP die verfügbare Genauigkeit im Subsekundenbereich offenlegt und das Verhalten durch Tests abgedeckt ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- c, php
- Bereich
- operating-systems
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100