Skip to main content


This class provides an abstract messaging API, internal to the sharding framework, that permits alternate underlying mechanisms to be substituted (e.g. TCP/IP devices or ECP/semaphores). In all methods, "client" and "server" may both be instances of shard server. In the descriptions, "client" and "server" refer to the role they are playing in the current messaging dialogue. Server side method to read a message from client.

Property Inventory

Method Inventory


property devs [ MultiDimensional ];
Array of messaging devices subscripted by namespace, shard index
Property methods: devsDisplayToLogical(), devsGet(), devsIsValid(), devsLogicalToDisplay(), devsLogicalToOdbc(), devsNormalize(), devsSet()
property msg as %String;
The most recently received message from the client (set by srvrecv()).
Property methods: msgDisplayToLogical(), msgGet(), msgIsValid(), msgLogicalToDisplay(), msgLogicalToOdbc(), msgNormalize(), msgSet()
property msgCode as %String;
The message code from the most recently received message from the client.
Property methods: msgCodeDisplayToLogical(), msgCodeGet(), msgCodeIsValid(), msgCodeLogicalToDisplay(), msgCodeLogicalToOdbc(), msgCodeNormalize(), msgCodeSet()
property shards [ MultiDimensional ];
Array of shard addresses corresponding to devs
Property methods: shardsDisplayToLogical(), shardsGet(), shardsIsValid(), shardsLogicalToDisplay(), shardsLogicalToOdbc(), shardsNormalize(), shardsSet()
property shardsVersions [ MultiDimensional ];
Array of version numbers, corresponding to devs - incremented by Rebalance when shards are removed so that reconnecting is needed
Property methods: shardsVersionsDisplayToLogical(), shardsVersionsGet(), shardsVersionsIsValid(), shardsVersionsLogicalToDisplay(), shardsVersionsLogicalToOdbc(), shardsVersionsNormalize(), shardsVersionsSet()
property ssio;
The server's I/O device
Property methods: ssioDisplayToLogical(), ssioGet(), ssioIsValid(), ssioLogicalToDisplay(), ssioLogicalToOdbc(), ssioNormalize(), ssioSet()


method cliclose(dev)
Close the specified device
method clirecv(dev) as %String
Client side method to read a reply from the server.
method clisend(dev, msg, qryId)
Client side method to send a message to server.
method reconnect(pMsgConnection) as %Status
Reconnect, after a dropped connection
method srvackclose()
Server acknowledge client's close request
method srvclose()
Close the server's device
method srvrecv() as %Library.Status
Server side method to receive a reply from a client. Sets msg to contain the message received (minus the message code), and msgCode to contain its message code.
method srvsend(reply)
Server side method to send a reply to a client.

Inherited Members

Inherited Methods

FeedbackOpens in a new tab