Skip to Content
Author's profile photo Former Member

ASE 15.7 ESD#4 Unix Domain Sockets

In the past few days, I have fired up a copy of ASE 15.7ESD#4  to try the new feature Unix Domain Sockets.  I found only a few notes about this feature. The CR listing is source of my information.  CR 667751 has all of the public information that I have found to date.

Here is the heart of the information.

“master afunix unused //<hostname>/<pipe>”

After many failed attempts, I realized how simple this could be.

The ASE Server creates a socket file at start-up based on the master entry in the interfaces file.

In order for this to work, the ASE dataserver must have write access to a folder.

Hmmm– $SYBASE sounds like a good choice.

I decided I wanted my socket file to be called “ASE.socket” in /sybase/ folder.

Here is an example of the master line that finally worked.

master afunix unused //mytesthost/sybase/ASE.socket

I tested the socket with isql & bcp… Both tools worked without a problem.  The feature of the new connection is to reduce the overhead associated with TCP/IP.  The results of my bcp inbound testing proved that the network layer was not my source of contention and slowness.  I expect that bcp outbound will show better results if I can get past other self-inflicted issues of my machine.

In conclusion, ASE Unix Domain Sockets works without issues when I use the ASE utilities.

Conclusion #2:

This feature is documented in the SDK manuals.

-New Features Bulletin Open Server™ 15.7 and SDK 15.7 for Windows, Linux, and UNIX

–Open Client 15.7 and Open Server 15.7 features in ESD #3

—-UNIX named sockets

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Former Member
      Former Member

      Years ago, isql had the ability to attach to the shared memory segment directly if run as the user that started dataserver or as root.  I think it was taken out in the transition to v11.0. 

      Such a feature might be useful for bcp I'm thinking.  Serious security / stability issues though.

      On a side note, I would love to be able to bcp directly into the data device.  hmm.. The database being offline or quiesced of course.  It wouldn't take much to write up a (totally unsupported) tool to do so assuming an 'empty' data device.

      Author's profile photo Former Member
      Former Member

      Here is the syntax to start the unix domain socket with sp_listener

      exec sp_listener 'start', 'afunix://mytesthost:/sybase/ASE.socket'