This is an automated email from the ASF dual-hosted git repository. asf-gitbox-commits pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/cayenne.git
commit bdaf2e9e5885b812f854cdc2ba4702862cc74667 Author: Andrus Adamchik <[email protected]> AuthorDate: Sun May 24 15:10:43 2026 -0400 a more reliable MCP handshake read --- .../apache/cayenne/mcp/tools/openproject/HandshakeWatcher.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/openproject/HandshakeWatcher.java b/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/openproject/HandshakeWatcher.java index 358987f4b..842589db6 100644 --- a/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/openproject/HandshakeWatcher.java +++ b/cayenne-mcp-server/src/main/java/org/apache/cayenne/mcp/tools/openproject/HandshakeWatcher.java @@ -107,6 +107,14 @@ class HandshakeWatcher { } private static HandshakeData readHandshake(Preferences node) { + try { + // Force a backing-store reload so keys written by the Modeler process are + // visible here — nodeExists() can return true before the reader's cache is + // refreshed on macOS CFPreferences. + node.sync(); + } catch (BackingStoreException e) { + LOGGER.debug("sync before handshake read failed, proceeding with cached values: {}", e.toString()); + } long pid = node.getLong("pid", -1L); String startedAt = node.get("startedAt", null); String resolvedProjectPath = node.get("projectPath", null);
