Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Z
zodb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Joshua
zodb
Commits
b56fc3f0
Commit
b56fc3f0
authored
Jan 09, 2003
by
Guido van Rossum
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Move the ZEO parameters into a <zeo> section.
parent
ead3ccff
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
67 additions
and
55 deletions
+67
-55
src/ZEO/runsvr.py
src/ZEO/runsvr.py
+13
-9
src/ZEO/schema.xml
src/ZEO/schema.xml
+51
-45
src/ZEO/tests/testRunsvr.py
src/ZEO/tests/testRunsvr.py
+3
-1
No files found.
src/ZEO/runsvr.py
View file @
b56fc3f0
...
...
@@ -120,14 +120,18 @@ class Options:
"""
self
.
load_configuration
()
def
load_schema
(
self
):
here
=
os
.
path
.
dirname
(
ZEO
.
__file__
)
schemafile
=
os
.
path
.
join
(
here
,
"schema.xml"
)
self
.
schema
=
ZConfig
.
loadSchema
(
schemafile
)
def
load_configuration
(
self
):
if
not
self
.
configuration
:
return
here
=
os
.
path
.
dirname
(
ZEO
.
__file__
)
schemafile
=
os
.
path
.
join
(
here
,
"schema.xml"
)
schema
=
ZConfig
.
loadSchema
(
schemafile
)
self
.
load_schema
()
try
:
self
.
rootconf
=
ZConfig
.
loadConfig
(
schema
,
self
.
configuration
)[
0
]
self
.
rootconf
,
nil
=
ZConfig
.
loadConfig
(
self
.
schema
,
self
.
configuration
)
except
ZConfig
.
ConfigurationError
,
errobj
:
self
.
usage
(
str
(
errobj
))
...
...
@@ -253,12 +257,12 @@ class ZEOOptions(Options):
def
load_zeoconf
(
self
):
# Get some option values from the configuration
if
self
.
family
is
None
:
self
.
family
=
self
.
rootconf
.
address
.
family
self
.
address
=
self
.
rootconf
.
address
.
address
self
.
family
=
self
.
rootconf
.
zeo
.
address
.
family
self
.
address
=
self
.
rootconf
.
zeo
.
address
.
address
self
.
read_only
=
self
.
rootconf
.
read_only
self
.
transaction_timeout
=
self
.
rootconf
.
transaction_timeout
self
.
invalidation_queue_size
=
100
self
.
read_only
=
self
.
rootconf
.
zeo
.
read_only
self
.
transaction_timeout
=
self
.
rootconf
.
zeo
.
transaction_timeout
self
.
invalidation_queue_size
=
self
.
rootconf
.
zeo
.
invalidation_queue_size
def
load_logconf
(
self
):
# Get logging options from conf, unless overridden by environment
...
...
src/ZEO/schema.xml
View file @
b56fc3f0
<schema
type=
"ZEO"
>
<schema>
<!-- XXX This schema still needs logging support. -->
...
...
@@ -10,53 +10,59 @@
<!-- Use the storage types defined by ZODB. -->
<import
src=
"../ZODB/config.xml"
/>
<key
name=
"address"
datatype=
"socket-address"
required=
"yes"
>
<description>
The address at which the server should listen. This can be in
the form 'host:port' to signify a TCP/IP connection or a
pathname string to signify a Unix domain socket connection (at
least one '/' is required). A hostname may be a DNS name or a
dotted IP address. If the hostname is omitted, the platform's
default behavior is used when binding the listening socket (''
is passed to socket.bind() as the hostname portion of the
address).
</description>
</key>
<sectiontype
name=
"zeo"
>
<key
name=
"read-only"
datatype=
"boolean"
required=
"no"
default=
"false"
>
<description>
Flag indicating whether the server should operate in read-only
mode. Defaults to false. Note that even if the server is
operating in writable mode, individual storages may still be
read-only. But if the server is in read-only mode, no write
operations are allowed, even if the storages are writable. Note
that pack() is considered a read-only operation.
</description>
</key>
<key
name=
"address"
datatype=
"socket-address"
required=
"yes"
>
<description>
The address at which the server should listen. This can be in
the form 'host:port' to signify a TCP/IP connection or a
pathname string to signify a Unix domain socket connection (at
least one '/' is required). A hostname may be a DNS name or a
dotted IP address. If the hostname is omitted, the platform's
default behavior is used when binding the listening socket (''
is passed to socket.bind() as the hostname portion of the
address).
</description>
</key>
<key
name=
"invalidation-queue-size"
datatype=
"integer"
required=
"no"
default=
"100"
>
<description>
The storage server keeps a queue of the objects modified by the
last N transactions, where N == invalidation_queue_size. This
queue is used to speed client cache verification when a client
disconnects for a short period of time.
</description>
</key>
<key
name=
"read-only"
datatype=
"boolean"
required=
"no"
default=
"false"
>
<description>
Flag indicating whether the server should operate in read-only
mode. Defaults to false. Note that even if the server is
operating in writable mode, individual storages may still be
read-only. But if the server is in read-only mode, no write
operations are allowed, even if the storages are writable. Note
that pack() is considered a read-only operation.
</description>
</key>
<key
name=
"transaction-timeout"
datatype=
"integer"
required=
"no"
>
<description>
The maximum amount of time to wait for a transaction to commit
after acquiring the storage lock, specified in seconds. If the
transaction takes too long, the client connection will be closed
and the transaction aborted.
</description>
</key>
<key
name=
"invalidation-queue-size"
datatype=
"integer"
required=
"no"
default=
"100"
>
<description>
The storage server keeps a queue of the objects modified by the
last N transactions, where N == invalidation_queue_size. This
queue is used to speed client cache verification when a client
disconnects for a short period of time.
</description>
</key>
<key
name=
"transaction-timeout"
datatype=
"integer"
required=
"no"
>
<description>
The maximum amount of time to wait for a transaction to commit
after acquiring the storage lock, specified in seconds. If the
transaction takes too long, the client connection will be closed
and the transaction aborted.
</description>
</key>
</sectiontype>
<section
type=
"zeo"
name=
"*"
required=
"yes"
attribute=
"zeo"
/>
<key
name=
"monitor-address"
datatype=
"socket-address"
required=
"no"
>
<description>
...
...
src/ZEO/tests/testRunsvr.py
View file @
b56fc3f0
...
...
@@ -81,7 +81,9 @@ class TestZEOOptions(TestOptions):
output_args
=
[]
configdata
=
"""
address 5555
<zeo>
address 5555
</zeo>
<filestorage fs>
path Data.fs
</filestorage>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment