ArcaPix PixStor C Library Python API
ArcaPix’s PixStor C Library Python API is licensed under the ArcaPix EULA
Please consult the CHANGELOG.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
An Introduction to the ArcaPix PixStor C Library Python API
The ArcaPix PixStor C Library Python API provides a Pythonic wrapper of the GPFS C API.
ArcaPix’s PixStor C Library Python API closely mirrors the GPFS C API. I.E. one to one mappings of the GPFS C API functions are presented in a Pythonic manner. Familiarity with the GPFS C API is useful for context, but not required.
Various utility functions are also offered.
ArcaPix’s PixStor C Library Python API is intended to be distributed with the ArcaPix PixStor Python API, but can also be used as a standalone library. CLib offers some functionality not currently available in the Python API.
BETA DISCLAIMER
THE BETA SOFTWARE LICENSED HERE UNDER IS STILL IN TESTING PHASE AND IS PROVIDED ON AN “AS IS” AND “AS AVAILABLE” BASIS AND IS BELIEVED TO CONTAIN DEFECTS AND A PRIMARY PURPOSE OF THIS BETA TESTING LICENSE IS TO OBTAIN FEEDBACK ON SOFTWARE PERFORMANCE AND THE IDENTIFICATION OF DEFECTS. LICENSEE IS ADVISED TO SAFEGUARD IMPORTANT DATA, TO USE CAUTION AND NOT TO RELY IN ANY WAY ON THE CORRECT FUNCTIONING OR PERFORMANCE OF THE BETA LICENSED SOFTWARE AND/OR ACCOMPANYING MATERIALS.
Bugs, feature requests and patches
Please submit all such items to support@[arcastream|pixitmedia].com.
Obtaining the API
The GPFS C Library Python API is available only to ArcaStream and Pixit Media (‘ArcaPix’) customers. Existing customers can install the API via applying updates or by contacting the support team.
The API is provided as a RPM package to be installed on all server nodes in the cluster or via ArcaPix’s PIP repository.
Setup
The API is compatible with:
Python >= 2.7 and >= 3.6
RedHat/CentOS >= 6, SLES >= 11
PixStor 3.5.x and greater
The API is provided as a RPM package to be installed on all server nodes in the cluster. Recent ArcaServe/PixStor installations are provided with the API pre-installed.
Compatibility
The API has been written to work with whichever string type is native to the python version being used. This means byte strings in python 2 and unicode in python 3.
In python 3, the bytes returned from GPFS C API are decoded to UTF-8, using ‘surrogate escapes’ for non-unicode bytes in accordance with PEP 383.
Note - surrogate escapes may not be printable. If you get a UnicodeEncodeError
, you may need to re-encode the string.
In python 3, any function which takes a path as a parameter will accept unicode strings, byte strings, or pathlib Path
.
Getting started
To use the API interactively, simply start Python, then import a CLib module’s function(s):
$ python
>>> from arcapix.fs.gpfs.clib.fssnap import get_fssnaphandle_by_path, get_fsname_from_fssnaphandle
>>>
>>> # Create FssnapHandle object
... fs = get_fssnaphandle_by_path('/gpfs/fs1/testfile.txt')
>>>
>>> # Get Filesystem name
... print(get_fsname_from_fssnaphandle(fs))
'fs1'
Licensing
ArcaPix’s PixStor Python API is proprietary commercial software.
You may not distribute the API to any third party.
For further information, please consult the LICENSE file included.
Queries regarding licensing should be forwarded to support@[arcastream|pixitmedia].com.
Indices and tables
quick access to all modules |
all functions, classes, terms |
search this documentation |