Commit Graph

3922 Commits

Author SHA1 Message Date
Fang
b224ac0878
ames: improve scry interface
No longer abuse the desk field, instead making use of the path. Reject
any scries outside of the local ship, empty desk and current time as
invalid.
2020-06-26 20:27:51 +02:00
Fang
7cc1b4f3ca
behn: optimize bounded timers scry 2020-06-25 19:25:44 +02:00
Fang
202de122ab
vere: if behn scry fails, don't try again
Instead, always fall back to the 10 minute timer as backstop.
2020-06-25 01:01:33 +02:00
Fang
e7ab3c037d
vere: rename behn.c's alm -> alm_o
To adhere to the naming conventions.
2020-06-24 23:33:22 +02:00
Fang
afd1808745
vere: scry out next behn timer for backstop
Instead of potentially waiting ten minutes in the problematic case, we
scry out the next timer from behn and set to that (if we haven't set
a new timer while we were waiting for the scry).
2020-06-24 23:31:25 +02:00
Fang
2be266de8c
vere: warn on invalid behn doze 2020-06-24 23:28:56 +02:00
Fang
a94285208a
behn: improve scry interface
No longer abuse the desk field, instead making use of the path. Reject
any scries outside of the local ship, empty desk and current time as
invalid.

Expose ducts only under a debug endpoint, nothing else should care about
being able to inspect them.

Add scry endpoints for the very next timer (if any), and all timers up
to and including a specified timestamp.
2020-06-24 17:09:29 +02:00
Fang
f714d90b15
arvo: allow the empty desk (%$) in scries
+slaw fails to parse empty strings as %tas, so we special-case it here.
2020-06-24 16:26:32 +02:00
Joe Bryan
cc93aed354 vere: fixes doubly-linked list handling in u3_auto_drop 2020-06-22 16:35:15 -07:00
Joe Bryan
3330c3eaac vere: disable core dumps in king
lmdb size makes these impractical, and unmapping on SIGABRT
requires canceling threads, which is undefined
2020-06-22 15:47:36 -07:00
Joe Bryan
76cd934864 pier: further limit activity in emergency exit (SIGABRT) 2020-06-22 14:00:17 -07:00
Joe Bryan
e7a95f6d6b ames: count dropped packets (and print every 1k with -v) 2020-06-22 13:50:37 -07:00
Joe Bryan
9816434890 vere: cleans up i/o driver shutdown 2020-06-22 12:58:48 -07:00
Joe Bryan
37cf2135bc term: ignore SIGWINCH if there's no active terminal driver 2020-06-22 12:55:55 -07:00
Joe Bryan
4a48e16f41 vere: refactors king/pier/lord shutdown 2020-06-22 12:55:55 -07:00
Joe Bryan
98040ffa2d newt: adds stop/dispose functions for read and write 2020-06-20 22:21:37 -07:00
Joe Bryan
71d6793943 vere: renames "daemon" to king, removes command socket 2020-06-20 22:21:37 -07:00
Joe Bryan
b75d42c335 vere: adds u3_ovum init/dispose to ward.c 2020-06-20 22:21:24 -07:00
Joe Bryan
5d71e0a804 vere: properly dispose disk resources on exit 2020-06-20 22:18:16 -07:00
Joe Bryan
df7cd2a673 vere: adds common structure management in ward.c 2020-06-20 22:15:58 -07:00
Joe Bryan
8497cd65c6 vere: switch lmdb back to the u3 prefix
c3 is intended for language-level functionality.
a prefix that communicates a lack of dependence
on u3 remains desirable.
2020-06-17 17:35:45 -07:00
Joe Bryan
d23d518f48 vere: moves i/o drivers 2020-06-17 16:31:09 -07:00
Joe Bryan
e297458e74 vere: stop leaking effects 2020-06-17 16:20:33 -07:00
Joe Bryan
5c9252e986 vere: fixes u3_auto_drop list-unlink implementation 2020-06-16 18:52:16 -07:00
Joe Bryan
42213269ce ames: fix null-deref in capped queue 2020-06-16 18:47:12 -07:00
Joe Bryan
1dc809662e Merge branch 'release/next-vere' into ipc-redux
* release/next-vere:
  vere: increase LMDB mapsize to 1TB on macOS, linux
  noun: road-size printfs on u3m_fall
2020-06-16 18:06:25 -07:00
Joe Bryan
5e9b90f5a3 serf: disables incomplete "static grab" on boot 2020-06-16 18:01:09 -07:00
Joe Bryan
82e06c31eb ames: cap ovum queue at 1k, dropping oldest packets first 2020-06-16 15:42:58 -07:00
Joe Bryan
755b2f1347 vere: track ovum queue depth per i/o driver 2020-06-16 15:42:41 -07:00
Philip Monk
41537a7467
Merge pull request #3012 from urbit/philip/road-size
noun: road-size printfs on u3m_fall
2020-06-15 19:41:24 -07:00
Jared Tobin
6e0cd4ef1a
vere: increase LMDB mapsize to 1TB on macOS, linux
Many ships have been observed bumping up against the existing mapsize
limits.  This results in a Vere crash via LMDB, which necessitates
compiling a new binary with a higher mapsize if one wants to relaunch.

There doesn't seem to be any serious penalty to setting this
somewhere in the terabyte range, though. [1]  In cases where the mapsize
exceeds the size of the disk, I infer from the LMDB docs that the
database may simply be permitted to grow until it runs up against the
disk limitations, which feels acceptable.

I've tested this on macOS and Linux and the binary runs without issue,
despite the mapsize being set far in excess of the disks I'm running on.

[1]: https://lmdb.readthedocs.io/en/release/
2020-06-13 10:08:12 +04:00
Philip Monk
eaa926a086
noun: road-size printfs on u3m_fall 2020-06-12 21:55:51 -07:00
~siprel
c523c90bf9 urbit-termsize: Change test executable name. 2020-06-12 18:33:10 +00:00
~siprel
57ef4254e4 Merge branch 'khrc' of https://github.com/urbit/urbit into siprel/sigwinch 2020-06-12 18:27:25 +00:00
~siprel
e8e46ee8c4 Merge branch 'master' of https://github.com/urbit/urbit into siprel/sigwinch 2020-06-12 18:19:51 +00:00
Joe Bryan
8fac63661f vere: removes ncurses dependency 2020-06-11 20:25:46 -07:00
Joe Bryan
6ea2acea86 term: bypass terminfo, use direct ANSI escape sequences 2020-06-11 20:24:38 -07:00
Joe Bryan
c3557e0836 Merge branch 'master' into ipc-redux-kh
* master: (25 commits)
  travis: Fix resource exhaustion error in test build.
  travis: Separate job for Haskell on Linux + bump nix version
  gall: properly handle empty outstanding ack queue
  vere: bump version to 0.10.5
  dawn: switch default eth node
  jets: patch cleanup
  Update os1-bug-report.md
  jets: switch openssl to the loom allocator.
  serf: disable automatic |pack
  release: urbit-os-v1.0.20
  behn: fix +unset-timer
  jael: send breach notifications in order
  jael: don't notify breach on initial update to ship
  jael: look for correct wire
  vere: handle failed cue of private key file
  u3: switches GMP import assert to conditional
  u3: fixes rock:load size printf
  vere: bypass terminal logging on lmdb worker thread
  vere: prevents term.c from retrying tcsetattr() indefinitely
  jets: jet decryption of aes-siv mode.
  ...
2020-06-11 19:07:13 -07:00
Joe Bryan
19da74d146 serf: disables auto |pack, refactors loading from rock (-r) 2020-06-11 16:28:17 -07:00
Joe Bryan
f48dd41ca8 serf: refactors %work $writ handling 2020-06-11 16:27:01 -07:00
Joe Bryan
00fefce334 serf: plugs leak of error-notification event 2020-06-11 16:27:00 -07:00
Joe Bryan
8ef8987b54 newt: adds synchronous read, used in serf with blocking writes 2020-06-11 16:27:00 -07:00
Joe Bryan
3f26140cf4 newt: delivers inbound messages asynchronously 2020-06-11 16:27:00 -07:00
Joe Bryan
a31f27a575 newt: cleans up api, allocates less on write 2020-06-11 16:27:00 -07:00
Joe Bryan
4cfaf08348 newt: print errors to stderr 2020-06-11 16:27:00 -07:00
Joe Bryan
27a9dbe1c0 u3: use u3r_mug_words for all atoms 2020-06-11 16:27:00 -07:00
Joe Bryan
9e305da03c u3: rewrites u3r_mug_words, correct for arbitrary input 2020-06-11 16:27:00 -07:00
Joe Bryan
2c5a1adea3 u3: adds failing u3r_mug_words tests 2020-06-11 16:27:00 -07:00
Joe Bryan
e7eceba965 u3: implements u3i_list()/u3nl() varargs list constructor 2020-06-11 16:27:00 -07:00
Joe Bryan
406a823ddd u3: adds allocator profiling labels to u3i_* atom functions 2020-06-11 16:27:00 -07:00