Monotone Zeit

Fragen und Probleme rund um die Abfragespache SQL.
Antworten
andreast
Neuer Benutzer
Beiträge: 1
Registriert: Mi 28. Nov 2018, 09:40

Monotone Zeit

Beitrag von andreast » Mi 28. Nov 2018, 11:41

Hallo alle,

habe folgende Frage: Kann man Postgres so konfigurieren, dass Funktionen wie now() eine monotone Zeit liefern?

In modernen OS Releases wird dies ja unterstützt. In der Linux man page zu clock_gettime() steht z.B.:
CLOCK_MONOTONIC
Clock that cannot be set and represents monotonic time since some unspecified starting point.

Für eine auf der Zeit basierende verlässliche, inkrementelle Verarbeitung ist eine monotone Zeitbasis streng genommen notwendig und dafür möchte ich es nutzen. In der Postgresdokumentation habe ich aber nichts zum Stichwort monoton (monotonic) gefunden.


Mit freundlichen Grüßen
Andreas

P.S.: Bin neu in diesem Forum und bitte um Nachsicht, falls meine Frage besser in eine andere Kategorie passen sollte.

castorp
Erfahrener Benutzer
Beiträge: 1086
Registriert: Sa 27. Jun 2009, 22:24
Wohnort: Bayern

Re: Monotone Zeit

Beitrag von castorp » Mi 28. Nov 2018, 11:45

Ich verstehe die Frage, nicht ganz. Das ist doch genau das, was now() macht?

Alternativ kannst Du ja auch clock_timestamp() verwenden.

Die unterschiedliche Bedeutung der verschiedenen Funktionen (und wann sie "weitergeschaltet" werden), ist im Handbuch eigentlich gut erklärt:

https://www.postgresql.org/docs/current ... ME-CURRENT
A SQL query walks into a bar and sees two tables. He walks up to them and says 'Can I join you?'

akretschmer
Erfahrener Benutzer
Beiträge: 7532
Registriert: So 29. Okt 2006, 13:35
Wohnort: Kaufbach, Sachsen, Germany, Germany
Kontaktdaten:

Re: Monotone Zeit

Beitrag von akretschmer » Mi 28. Nov 2018, 13:49

ja, evtl. sucht er clock_timestamp(), welches innerhalb einer Transaktio (!) im Gegensatz zu now() den aktuellen timestamp liefert, now() liefert den Startzeitpunkt der Transaktion.
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

pogomips
Benutzer
Beiträge: 73
Registriert: Fr 18. Nov 2016, 09:55

Re: Monotone Zeit

Beitrag von pogomips » Mi 28. Nov 2018, 20:52

Wenn ich mich drauf verlassen muss, würde ich die Monotonie durch eine (zusätzliche) Sequenz erzwingen. Hat dann mit einem synchronen Zeitwert nichts mehr zu tun, aber ist monoton, sogar bei Schaltzeiten oder so. Das wäre dann eine zusätzliche Spalte, die als sagen wir Subfraktion genutzt werden kann.

Antworten