Skip to content

Merge feature/vcpu-runnable to feature/numa8 #6540

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 245 commits into
base: feature/numa8
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
245 commits
Select commit Hold shift + click to select a range
5412b88
CP-52880: benchmark for Xapi_vdi.update_allowed_operations
edwintorok Apr 18, 2024
5b52598
CP-52880: optimize List manipulation
edwintorok Apr 18, 2024
49400e4
CP-52880: Use a Set instead of a list for checking VDI operations
edwintorok Apr 18, 2024
8bd5737
CP-52880: change order of short-circuited boolean operator argument
edwintorok Apr 18, 2024
50a39d7
CP-52880: Avoid O(N^2) behaviour in Xapi_vdi.update_allowed_operations
edwintorok Apr 18, 2024
12e5680
CP-53477 Update host/pool datamodel to support SSH status query and c…
LunfanZhang Mar 25, 2025
2f00a21
CP-53477 Update Host/Pool Data model to Support Dom0 SSH Control (#6388)
minglumlu Mar 28, 2025
497bbfa
Merge master into feature/configure-ssh-phase2 (#6398)
gangj Apr 2, 2025
db38cb0
Fixup
gangj Mar 28, 2025
a875364
CP-53711: Copy SSH settings from pool coordinator in pool join
gangj Mar 28, 2025
6e6c0ed
CP-53711: Copy SSH settings from pool coordinator in pool join (#6395)
gangj Apr 2, 2025
ac20de6
Add additional tracing to VBD plug/unplug
snwoods Mar 21, 2025
79c9219
CP-53554: Split plug xenopsd atomic into attach/activate
snwoods Mar 14, 2025
1a46f33
CP-53555: Split unplug atomic into deactivate/detach
snwoods Mar 21, 2025
31c2b3c
Fixup
gangj Apr 7, 2025
49f8128
Merge master into feature/configure-ssh-phase2 (#6409)
gangj Apr 7, 2025
600e166
CP-53802: Restore SSH service to default state in pool eject
gangj Apr 7, 2025
0bc2246
Add default value of SSH settings in constants.ml
gangj Apr 7, 2025
5a533f5
CP-53711: Apply SSH settings in joiner before update_non_vm_metadata
gangj Apr 7, 2025
f67dcf7
CP-53723 Implement Console timeout configure API for Dom0 SSH control
LunfanZhang Apr 1, 2025
b70078f
CP-53711: Apply SSH settings in joiner before update_non_vm_metadata …
gangj Apr 8, 2025
25ed999
CP-53802: Restore SSH service to default state in pool eject (#6399)
gangj Apr 8, 2025
a3bc84d
CP-53478: Implement SSH enabeld timeout API for Dom0 SSH control
LunfanZhang Apr 1, 2025
cb9277d
CP-53725 Create SSH-related xe CLI for Dom0 SSH control
LunfanZhang Apr 1, 2025
e29eda2
CP-53478: Implement SSH-related APIs for Dom0 SSH control (#6394)
minglumlu Apr 8, 2025
365cd74
Remove the unused error set_console_idle_timeout_failed
gangj Apr 15, 2025
26ed87d
Update pom.xml
odaysec Apr 16, 2025
34b308c
CP-54138: Sync SSH status during XAPI startup
LunfanZhang Apr 11, 2025
12d5562
Merge master into current branch and resolve conflicts
LunfanZhang Apr 21, 2025
779f8f7
Sync master to feature/configure-ssh-phase2 (#6435)
BengangY Apr 22, 2025
f0d21ae
Move update_snapshot_info_dest to storage_mux
Vincent-lau Apr 17, 2025
0a21358
Refactor Storage_smapiv1.find_vdi
Vincent-lau Apr 23, 2025
7471d40
Use the new scan2
Vincent-lau Apr 17, 2025
ad25956
Refactor Storage_migrate.find_vdi
Vincent-lau Apr 17, 2025
8b5bdf7
Move the `update_snapshot_info_dest` to storage mux (#6433)
Vincent-lau Apr 24, 2025
82c509f
Add new interface for mirror operation in SMAPIv3
Vincent-lau Apr 14, 2025
1fe6389
Add more states for SXM
Vincent-lau Apr 15, 2025
59236c6
Remove receive_start(2) from storage_migrate
Vincent-lau Apr 15, 2025
8da184b
Change how receive_start2 is called
Vincent-lau Apr 15, 2025
c7a04c0
Change `receive_start2` to multiplex on the local SR type (#6434)
Vincent-lau Apr 24, 2025
6a1d8af
Add qcow2 as supported format by xcp-rrdd-iostat
gthvn1 Feb 3, 2025
cfeac55
Add qcow2 as supported format by xcp-rrdd-iostat (#6438)
lindig Apr 25, 2025
8f94586
CP-53446: Split plug and unplug atomics to enable live migration down…
snwoods Apr 25, 2025
3453e78
CA-404946: NBD: set timeout to 90s to match iSCSI default device/timeout
edwintorok Jan 31, 2025
f715b28
CA-404946: NBD: use persistent connection
edwintorok Jan 31, 2025
997d5db
Update datamodel_lifecycle
BengangY Apr 28, 2025
625449c
CP-52880: Avoid O(N^2) behaviour in Xapi_vdi.update_allowed_operation…
edwintorok Apr 28, 2025
bc273f7
CA-404946: NBD: increase timeout to match iSCSI timeout and use persi…
robhoes Apr 28, 2025
b575fde
Update datamodel_lifecycle (#6443)
Vincent-lau Apr 28, 2025
3c6422a
[maintenance]: reformat dune files in sdk-gen
edwintorok Apr 28, 2025
2f26381
build: avoid race condition on install
edwintorok Apr 28, 2025
77f1397
build: avoid race condition on install (#6446)
edwintorok Apr 28, 2025
f559181
[maintenance]: drop sexprpp
edwintorok Mar 13, 2025
5d47e32
XAPI website link updated in README
LuKP17 Apr 30, 2025
ee0a5c3
XAPI website link updated in README (#6448)
last-genius May 1, 2025
8c447c0
xapi-log/test: Package the cram test in xapi-log
last-genius May 1, 2025
afbe16d
xapi-log/test: Package the cram test in xapi-log (#6450)
last-genius May 6, 2025
862732d
CA-409710: Modify the default backup parameters
BengangY Apr 25, 2025
0482b62
CA-409710: Modify the default backup parameters (#6440)
BengangY May 7, 2025
0911604
xenopsd: Don't balloon down memory on same-host migration
last-genius Apr 24, 2025
b170980
xenopsd: Don't balloon down memory on same-host migration (#6437)
last-genius May 7, 2025
6f9a8db
CA-410001: Check rrdi.rrd to avoid ds duplicate
BengangY Apr 30, 2025
fed5c07
CA-410001: Check rrdi.rrd to avoid ds duplicate (#6449)
BengangY May 7, 2025
d875cfa
xapi_xenops: Avoid a race during suspend
last-genius May 6, 2025
21128b3
xapi_xenops: Avoid a race during suspend (#6454)
last-genius May 7, 2025
5b06182
CP-54828: import latest benchmark CLI from ocaml-rpc
edwintorok Apr 28, 2025
89b512e
CP-54828: benchmark for pool field serialization/deserialization
edwintorok Apr 28, 2025
68c761a
CP-54827: sexpr: speed up escaping
edwintorok Mar 13, 2025
3a44ad5
CP-54827: sexpr: avoid escaping "
edwintorok Mar 13, 2025
5f52ded
CP-54827: date: speed up of_iso8601
edwintorok Mar 13, 2025
f642b34
CP-54826: Mutex.execute: avoid costly backtrace formatting in finally
edwintorok Mar 13, 2025
63f4938
CP-54828: avoid raising exceptions all the time in the RBAC code
edwintorok Apr 28, 2025
9310482
CP-54828: cache marshaled row values
edwintorok May 1, 2024
69c312f
CP-54826/CP-54827: optimize handling of the Pool object (#6445)
edwintorok May 7, 2025
caaad26
CA-403867: Block pool join if IP not configured on cluster network
gangj Apr 18, 2025
18e8584
Reapply "CA-403867: Block pool join if IP not configured on cluster n…
gangj May 8, 2025
61f79d2
[maintenance]: bool is a keyword in newer C versions, cannot be a par…
edwintorok Apr 29, 2025
34e2962
CP-307947: [maintenance]: reformat dune file in database
edwintorok May 8, 2025
9392894
CP-307947: [maintenance]: add .mli files to all database modules
edwintorok May 8, 2025
7f96ccd
[maintenance]: bool is a keyword in newer C versions, cannot be a par…
edwintorok May 9, 2025
1cfaab9
CP-307947: [maintenance]: add .mli files to all database modules (#6460)
edwintorok May 9, 2025
ddeff67
CA-409949 CA-408048 remove unavailable SM types at startup
May 9, 2025
136e72b
Mux mirror failure check for SXM
Vincent-lau Apr 24, 2025
b8ce5a2
Bring back DATA.MIRROR.list to storage_mux
Vincent-lau Apr 25, 2025
83fbfdc
Bring back DATA.MIRROR.stat to storage_mux
Vincent-lau Apr 30, 2025
bb994e0
Add more debugging to storage_smapiv1_migrate
Vincent-lau May 7, 2025
aea9ab5
CP-307958: Benchmark for Db_lock
edwintorok May 8, 2025
3da9ef1
CP-307958: Benchmark for rpc_of_event
edwintorok May 8, 2025
d215b36
CP-307958: Generate event RPC more directly
edwintorok May 8, 2025
8b030f1
CP-307958: Replace mutexes with Atomic where possible
edwintorok May 8, 2025
40e57b0
CP-307958: remove condition from Db_lock
edwintorok May 8, 2025
10b4f49
CP-307958: Benchmark for Db writes
edwintorok May 8, 2025
fbb7117
CP-307958: Use Atomic.t for DB ref
edwintorok May 8, 2025
f2dcc67
CP-307958: Various pool optimizations
edwintorok May 9, 2025
ddea018
Mux mirror failure check for SXM (#6439)
Vincent-lau May 12, 2025
377e923
Change all receive_start2 to receive_start3
Vincent-lau May 12, 2025
84b096a
CA-408492: Add back receive_start2 for backwards compat
Vincent-lau May 12, 2025
3b34ea1
CA-408492: Add back receive_start2 for backwards compat (#6464)
edwintorok May 12, 2025
1b57d09
Change all receive_finalize2 to receive_finalize3
Vincent-lau May 12, 2025
96f8ba9
CA-408492: Add back receive_finalize2
Vincent-lau May 12, 2025
6285222
CA-408492: Add back `receive_finalize2` as well (#6465)
edwintorok May 13, 2025
418b610
CP-307958: small DB improvements and benchmarks (#6461)
psafont May 13, 2025
1450e2e
[prepare]: make StringPool share safer
edwintorok May 8, 2025
9fe0eba
[prepare]: call Share.merge around ensure_utf8_xml calls
edwintorok May 8, 2025
5ffe224
Move thread-safe code outside of the DB lock
edwintorok May 8, 2025
a77e34f
CP-307933: [prepare]: introduce Schema.CachedValue
edwintorok May 2, 2025
003ea4c
CP-3097933: [prepare]: introduce type constructor in Value.t
edwintorok May 2, 2025
db991bb
CP-307933: [prepare]: introduce field type in DB_ACCESS
edwintorok May 2, 2024
f2e86c2
CP-307933: [prepare]: introduce DB_ACCESS2
edwintorok May 2, 2025
d0dc77f
CP-307933: [prepare]: introduce DB_ACCESS2 implementation
edwintorok May 2, 2024
b096d83
CP-307933: Start using DB_ACCESS2
edwintorok May 2, 2025
b9082a8
CP-307933: avoid serializing/deserializing database fields in DB actions
edwintorok May 9, 2025
7ad042e
CP-307865 accept SHA512 for custom server certs
May 14, 2025
1d12b8e
CP-308049: rrdview tool
edwintorok Dec 11, 2024
8deed51
CP-308049: rrdview tool
edwintorok Dec 11, 2024
bac8dcf
CP-307933: avoid serializing/deserializing database fields all the ti…
edwintorok May 15, 2025
a841d38
CA-409949 CA-408048 remove unavailable SM types at startup (#6463)
lindig May 15, 2025
ce0d919
CP-307865 adjust error meesage to mention supported SHA algorithms
May 14, 2025
44031b5
CP-307865 add unit tests for SHA512
May 15, 2025
be8e7b3
CP-307865 accept SHA512 for custom server certs (#6467)
psafont May 15, 2025
da22219
gencert testing: use human-readable errors for validation
psafont May 15, 2025
cedf836
CA-409510: Make xenopsd nested Parallel atoms explicit
snwoods Apr 29, 2025
983a48a
gencert testing: use human-readable errors for validation (#6471)
psafont May 15, 2025
1c19aa8
CA-411122: do not call set-iscsi-initiator with an empty string for IQN
edwintorok May 19, 2025
6258405
CA-409510: Give a warning if atoms nested incorrectly
snwoods May 19, 2025
38f23f9
CA-411122: do not call set-iscsi-initiator with an empty string for I…
edwintorok May 19, 2025
17181ca
CA-409510: Make xenopsd nested Parallel atoms explicit (#6469)
snwoods May 20, 2025
179854e
CA-410782: Add receive_memory_queues for VM_receive_memory operations
snwoods May 14, 2025
9ba2d65
xapi: Cleanup unused functions
last-genius May 20, 2025
f59845e
CP-308075 document changing paths for SM plugins in XS9
May 20, 2025
3185a43
xapi: Cleanup unused functions (#6477)
lindig May 20, 2025
76929ca
CP-308075 document changing paths for SM plugins in XS9 (#6478)
lindig May 20, 2025
3be8ea9
CP-53642: change default NUMA placement policy to best-effort
psafont May 15, 2025
ef089d4
CP-54275: Add a blocklist mechanism to avoid incorrect/old repo config.
stephenchengCloud May 16, 2025
54b66f9
CP-54275: Add a blocklist mechanism to avoid incorrect/old repo confi…
liulinC May 21, 2025
e6f94be
CP-53642: change default NUMA placement policy to best-effort (#6472)
psafont May 21, 2025
222f407
Minor doc fix
Vincent-lau May 13, 2025
f2037bd
Add helper functions to parse nbd info
Vincent-lau Apr 15, 2025
97ecbf4
Introduce DATA.mirror and DATA.stat
Vincent-lau Apr 15, 2025
30b8355
Add dummy implementation for VDI.similar_content for SMAPIv3
Vincent-lau Apr 15, 2025
3426f46
CP-307922: Implement SMAPIv3 outbound migration
Vincent-lau Apr 15, 2025
2364acc
Multiplex receive_cancel2
Vincent-lau Apr 16, 2025
d91e2ba
Preserve content_id when doing snapshot on SMAPIv3
Vincent-lau Apr 17, 2025
5329a2d
Add Nbd parameters into VDI.attach
Vincent-lau Apr 24, 2025
2eff6ab
Update the name of the nbd proxy
Vincent-lau Apr 24, 2025
0c2660f
Add post_deactivate_hook to storage_mux for SMAPIv3
Vincent-lau May 8, 2025
62dd9da
Move attach/activate for SXM
Vincent-lau Apr 24, 2025
49037e2
Add mirror_checker for SMAPIv3 migrate
Vincent-lau Apr 28, 2025
16cbb0c
Cancel the watchdog before deactivating SMAPIv1 VDI
Vincent-lau Apr 28, 2025
b62e9fb
doc: Move SXM docs to its own dir
Vincent-lau Apr 22, 2025
2514621
doc: Add doc on how SMAPIv1 SXM works
Vincent-lau Apr 22, 2025
5a0babd
doc: Add doc for SMAPIv3 SXM
Vincent-lau Apr 22, 2025
cb30e77
CP-307922: Implement outbound SXM for SMAPIv3 (#6457)
Vincent-lau May 21, 2025
f4b1c5e
SXM: Keep previous http handler for back-compat
Vincent-lau May 21, 2025
b947e1e
CA-409482: Using computed delay for RRD loop
BengangY May 8, 2025
b91bba2
CA-409482: Using computed delay for RRD loop (#6458)
BengangY May 22, 2025
fadf706
CA-411319: Concurrent `VM.assert_can_migrate` failure
BengangY May 20, 2025
a1767a6
CA-410782: Add receive_memory_queues for VM_receive_memory operations…
edwintorok May 22, 2025
4f2f185
SXM: Keep previous http handler for back-compat (#6482)
robhoes May 22, 2025
d27a118
CA-411319: Concurrent `VM.assert_can_migrate` failure (#6476)
psafont May 22, 2025
84ecb1e
CA-410948 Avoid rasie full Exception when disable/enable ssh failed
LunfanZhang May 14, 2025
760fb26
CA-409949 CA-408048 XSI-1912 remove unabailable SM plugin by ref
May 29, 2025
bb63de6
CA-409949 CA-408048 XSI-1912 remove unavailable SM plugin by ref (#6490)
edwintorok May 29, 2025
6049a4a
xapi-types: remove dev errors when adding features
psafont May 21, 2025
ab90994
xenctrlext: add function to set the hard-affinity for vcpus
psafont May 28, 2025
836b3f1
xenopsd: pass the hard-affinity map to pre_build
psafont May 29, 2025
8d6044f
xenopsd: do not send hard affinities to xenguest when not needed
psafont May 29, 2025
0c00373
xenopsd: set the hard affinities directly when set by the user
psafont May 29, 2025
02fca09
xenopsd: expose a best-effort mode that set the hard affinity mask (C…
psafont May 28, 2025
18c952f
xapi: use hard-pinning with best-effort as an experimental feature (C…
psafont May 29, 2025
ae2d859
Add experimental feature to use hard affinities when using best-effor…
psafont Jun 2, 2025
3f21dea
CA-411679: Add min/max to runstate metrics
BengangY Jun 3, 2025
78d25e3
CA-411679: Runstate metrics return data over 100%
BengangY Jun 3, 2025
1356e9c
Modify doc mistakes
BengangY Jun 3, 2025
f75af5b
Modify doc mistakes (#6494)
psafont Jun 3, 2025
e156f31
CA-410948 Refine the Exception when disable/enable SSH failed (#6487)
BengangY Jun 3, 2025
c21f965
Merge master into current branch and resolve conflicts
LunfanZhang Jun 3, 2025
d5a6e88
CONTRIBUTING: add some initial guidelines
last-genius May 23, 2025
c7de2ce
Removed PowerShell 5.x build due to the retirement of windows-2019.
kc284 Jun 3, 2025
cfdb76e
Removed PowerShell 5.x build due to the retirement of windows-2019. (…
lindig Jun 3, 2025
c3761f9
fix Failure to use HTTPS or SFTP URL in Maven artifact upload/downloa…
psafont Jun 3, 2025
8a5111d
Add file-upload support to xe host-call-plugin
Jun 2, 2025
cf89d65
CP-53475 Update release number to latest tag
LunfanZhang Jun 3, 2025
80b0d6f
Sync master to feature/configure-ssh-phase2 (#6496)
BengangY Jun 4, 2025
cba2f1d
XSI-1918: Host can not join pool after enable external auth
liulinC May 30, 2025
35c353c
XSI-1918: Host can not join pool after enable external auth (#6492)
liulinC Jun 4, 2025
ee1e4c8
Add file-upload support to xe host-call-plugin (#6497)
psafont Jun 4, 2025
0b608d5
Merge SSH management Phase2 feature to next (#6500)
BengangY Jun 4, 2025
09b6256
xapi_vif: Guarantee the device parameter is an unsigned decimal integer
last-genius Jun 3, 2025
4bfdf7e
xapi_vif: Guarantee the device parameter is an unsigned decimal integ…
last-genius Jun 4, 2025
5c54da3
xapi-idl: Avoid printing cli output when testing
psafont Jun 4, 2025
e121328
xapi-storage-script: avoid output when running python tests
psafont Jun 4, 2025
19e1704
CA-411766: Detach VBDs right after VM Halted
BengangY Jun 4, 2025
7ad7f88
CA-411679: Runstate metrics return data over 100% (#6493)
BengangY Jun 5, 2025
6c9167f
CA-411766: Detach VBDs right after VM Halted (#6501)
BengangY Jun 5, 2025
755d33b
Reduce output when running unit tests (#6502)
psafont Jun 5, 2025
7c27cc2
datamodel_lifecycle: automatic update
psafont Jun 5, 2025
85d5c92
CONTRIBUTING: add some initial guidelines (#6485)
psafont Jun 5, 2025
47d8133
CP-308049: rrdview tool (#6468)
edwintorok Jun 5, 2025
44ae9d5
datamodel_lifecycle: automatic update (#6506)
BengangY Jun 5, 2025
b8aa4a7
xcp-rrdd: change the code responsible for filtering out paused domains
psafont Jun 5, 2025
a227018
Update datamodel_lifecycle (25.21.0)
BengangY Jun 9, 2025
df3b586
Merge branch 'master' into private/bengangy/sync-master-to-vcpu-runnable
BengangY Jun 9, 2025
da12bab
CA-410085: Improving clearing cgroup after vfork
freddy77 Jun 6, 2025
c147854
Update datamodel_lifecycle (25.21.0) (#6509)
psafont Jun 9, 2025
6a30390
Sync master to feature/vcpu-runnable (#6510)
BengangY Jun 9, 2025
bd5fe18
Adapt code to new mirage-crypto (CP-308222)
psafont Jun 3, 2025
61eb0aa
CP-308252 add VM.call_host_plugin
Jun 5, 2025
6ffa299
xapi-client: Add Tasks.wait_for_all_with_callback
last-genius Jun 6, 2025
64f6f63
xapi_host: Parallelize host evacuation even more
last-genius Jun 6, 2025
d2f366e
CP-308252 add VM.call_host_plugin (#6508)
lindig Jun 9, 2025
0c961bb
github: keep scheduled yangtze's runs working
psafont Jun 9, 2025
fd49f35
rrdd: Avoid missing aggregation of metrics from newly destroyed domains
psafont Jun 5, 2025
87ca449
xapi-aux: remove cstruct usage from networking_info
psafont Jun 3, 2025
867d563
github: keep scheduled yangtze's runs working (#6516)
psafont Jun 10, 2025
40e9fa1
xapi-cli-server: Expose evacuate-batch-size parameter in the CLI
last-genius Jun 6, 2025
6727c4e
Make rrdd more robust against domain appearing and disappearing (#6515)
psafont Jun 10, 2025
817b434
Parallelize host evacuation even more (#6514)
last-genius Jun 10, 2025
909b48e
Adapt code to new mirage-crypto (CP-308222) (#6512)
psafont Jun 10, 2025
c3fa071
CA-410085: Improving clearing cgroup after vfork (#6507)
lindig Jun 10, 2025
4cb387d
[maintenance]: add forkexecd C objects to .gitignore
edwintorok Jun 10, 2025
e67f151
[maintenance]: add forkexecd C objects to .gitignore (#6517)
edwintorok Jun 10, 2025
11ab8a6
unixext: Add a raise_with_preserved_backtrace function
last-genius Jun 10, 2025
929eefd
xapi_vgpu_type: Don't pollute the logs with non-critical errors
last-genius Jun 10, 2025
a4b992c
networkd: Add ENOENT to the list of expected errors in Sysfs.read_one…
last-genius Jun 10, 2025
3f0e977
xenguestHelper: Don't dump errors on End_of_file
last-genius Jun 10, 2025
743565c
Don't pollute the logs with some errors (#6518)
last-genius Jun 11, 2025
3b7278f
xe-cli completion: Remove "<not in database>" from completion suggest…
last-genius Jun 11, 2025
4e5012f
xe-cli completion: Fix debug logging
last-genius Jun 11, 2025
0ba2168
xe-cli completion: Eliminate duplicate suggestions early on
last-genius Jun 11, 2025
32a772a
xe-cli completion: Improve completion for 'resident-on=' and 'affinity='
last-genius Jun 11, 2025
2a8e55b
xe-cli completion: Handle suggestions for 'suspend-{VDI,SR}-uuid'
last-genius Jun 11, 2025
3ceb3d2
Improve `xe-cli` completion (#6524)
last-genius Jun 12, 2025
6fe7c9e
CA-412164: XSI-1901: uid-info does not support `:` in gecos
liulinC Jun 11, 2025
af0769d
CA-412164: XSI-1901: uid-info does not support `:` (#6522)
liulinC Jun 12, 2025
3d75583
CP-47063: Instrument xenops vm non-atomic functions.
GabrielBuica Jun 4, 2025
5138375
CP-47063: Instrument `switch_rpc` and message-switch client
GabrielBuica Jun 4, 2025
502fc45
CP-47063: Tracing instrumentation around message-switch send (#6503)
edwintorok Jun 12, 2025
69087b1
CA-412313: Tracing_export: flush on XAPI exit
edwintorok Jun 11, 2025
a54505e
CA-412313: xs-trace: introduce a pp command
edwintorok Jun 11, 2025
afb3678
CA-412313: don't lose distributed tracing spans when XAPI is shut dow…
last-genius Jun 12, 2025
a6e7c17
Merge master to feature/vcpu-runnable (#6529)
gangj Jun 13, 2025
e43f3ee
Rename RRD metric "runnable" to "runnable_any"
gangj Jun 13, 2025
a9a0c18
Add max to "runnable_any" metric
gangj Jun 13, 2025
b9ebe6f
Tweaks to cpu metrics (#6530)
psafont Jun 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/1.249-lcm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ on:
jobs:
python-test:
name: Python tests
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
permissions:
contents: read
strategy:
Expand All @@ -28,7 +28,7 @@ jobs:

ocaml-test:
name: Ocaml tests
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04

steps:
- name: Checkout code
Expand Down
74 changes: 0 additions & 74 deletions .github/workflows/generate-and-build-sdks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -200,80 +200,6 @@ jobs:
name: SDK_Binaries_CSharp
path: source/src/bin/Release/XenServer.NET.${{ env.XAPI_VERSION_NUMBER }}-prerelease-unsigned.nupkg

build-powershell-5x-sdk:
name: Build PowerShell 5.x SDK (.NET Framework 4.5)
needs: build-csharp-sdk
# PowerShell SDK for PowerShell 5.x needs to run on windows-2019 because
# windows-2022 doesn't contain .NET Framework 4.x dev tools
runs-on: windows-2019
permissions:
contents: read

steps:
- name: Strip 'v' prefix from xapi version
shell: pwsh
run: echo "XAPI_VERSION_NUMBER=$("${{ inputs.xapi_version }}".TrimStart('v'))" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append

- name: Retrieve PowerShell SDK source
uses: actions/download-artifact@v4
with:
name: SDK_Source_PowerShell
path: source/

- name: Retrieve C# SDK binaries
uses: actions/download-artifact@v4
with:
name: SDK_Binaries_CSharp
path: csharp/

# Following needed for restoring packages
# when calling dotnet add package
- name: Set up dotnet CLI (.NET 6.0 and 8.0)
uses: actions/setup-dotnet@v4
with:
dotnet-version: |
6
8

- name: Setup project and dotnet CLI
shell: pwsh
run: |
dotnet nuget add source --name local ${{ github.workspace }}\csharp
dotnet add source/src package XenServer.NET --version ${{ env.XAPI_VERSION_NUMBER }}-prerelease-unsigned

- name: Build PowerShell SDK (.NET Framework 4.5)
shell: pwsh
run: |
dotnet build source/src/XenServerPowerShell.csproj `
--disable-build-servers `
--configuration Release `
-p:Version=${{ env.XAPI_VERSION_NUMBER }}-prerelease-unsigned `
-p:TargetFramework=net45 `
--verbosity=normal`

- name: Update SDK and PS versions in "XenServerPSModule.psd1"
shell: pwsh
run: |
(Get-Content "source\XenServerPSModule.psd1") -replace "@SDK_VERSION@","${{ env.XAPI_VERSION_NUMBER }}" | Set-Content -Path "source\XenServerPSModule.psd1"
(Get-Content "source\XenServerPSModule.psd1") -replace "@PS_VERSION@","5.0" | Set-Content -Path "source\XenServerPSModule.psd1"

- name: Move binaries to destination folder
shell: pwsh
run: |
New-Item -Path "." -Name "output" -ItemType "directory"
Copy-Item -Verbose "source\README_51.md" -Destination "output" -Force
Copy-Item -Verbose "source\LICENSE" -Destination "output" -Force
Copy-Item -Path "source\src\bin\Release\net45\*" -Include "*.dll" "output\"
Get-ChildItem -Path "source" |`
Where-Object { $_.Extension -eq ".ps1" -or $_.Extension -eq ".ps1xml" -or $_.Extension -eq ".psd1" -or $_.Extension -eq ".txt" } |`
ForEach-Object -Process { Copy-Item -Verbose $_.FullName -Destination "output" }

- name: Store PowerShell SDK (.NET Framework 4.5)
uses: actions/upload-artifact@v4
with:
name: SDK_Binaries_XenServerPowerShell_NET45
path: output/**/*

build-powershell-7x-sdk:
name: Build PowerShell 7.x SDK
strategy:
Expand Down
11 changes: 0 additions & 11 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,12 +83,6 @@ jobs:
name: SDK_Binaries_CSharp
path: dist/

- name: Retrieve PowerShell 5.x SDK distribution artifacts
uses: actions/download-artifact@v4
with:
name: SDK_Binaries_XenServerPowerShell_NET45
path: sdk_powershell_5x/

- name: Retrieve PowerShell 7.x SDK distribution artifacts
uses: actions/download-artifact@v4
with:
Expand All @@ -104,10 +98,6 @@ jobs:
rm -rf libxenserver/usr/local/lib/
tar -zcvf libxenserver-prerelease.src.tar.gz -C ./libxenserver/usr/local .

- name: Zip PowerShell 5.x SDK artifacts for deployment
shell: bash
run: zip PowerShell-SDK-5.x-prerelease-unsigned.zip ./sdk_powershell_5x -r

- name: Zip PowerShell 7.x SDK artifacts for deployment
shell: bash
run: zip PowerShell-SDK-7.x-prerelease-unsigned.zip ./sdk_powershell_7x -r
Expand All @@ -120,7 +110,6 @@ jobs:
shell: bash
run: |
gh release create ${{ github.ref_name }} --repo ${{ github.repository }} --generate-notes dist/* \
PowerShell-SDK-5.x-prerelease-unsigned.zip \
PowerShell-SDK-7.x-prerelease-unsigned.zip \
Go-SDK-prerelease-unsigned.zip \
libxenserver-prerelease.tar.gz libxenserver-prerelease.src.tar.gz
Expand Down
162 changes: 162 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
# Issues

We welcome reports of technical issues with the components of the xen-api
toolstack. Please make sure that the description of the issue is as detailed as
possible to help anyone investigating it:

1) Mention how it was detected, if and how it could be reproduced

1) What's the desired behaviour? In what cases would it be useful?

1) Include error messages, related logs if appropriate

# Pull Requests

To contribute changes to xen-api, please fork the repository on
GitHub, and then submit a pull request.

It is required to add a `Signed-off-by:` as a
[Developers Certificate of Origin](http://developercertificate.org).
It certifies the patch's origin and is licensed under an
appropriate open-source licence to include it in Xapi:
https://git-scm.com/docs/git-commit#Documentation/git-commit.txt---signoff

The following points are intended to describe what makes a contribution "good" -
easier to review, integrate, and maintain. Please follow them in your work.

## Commit subjects and PR titles

Commit subjects should preferrably start with the name of the component the
commit is most related to, and describe what the commit achieves. If your
commit only touches the `ocaml/xenopsd` directory, it should look like this,
for example:

```
xenopsd: Fix a deadlock during VM suspend
```

Similar principle applies to Pull Request titles. If there is only a single
commit in the PR, Github will automatically copy its subject and description to
the PR's title and body. If there are several commits in the PR, describe what
the PR achieves and the components it most directly impacts.

If the commit subject includes some tracking identifier (such as `CP-1234`, for
example) referring to internal systems, please make sure to include all of the
essential information in the public descriptions - describe the symptoms of the
issue, how it was detected, investigated, how it could be reproduced, what are
the trade-offs and so on as appropriate.

## Split into commits

Following from the rules described above, if what the commit achieves is
difficult to fit into its subject, it is probably better to split it into
several commits, if possible. Note that every commit should build (`make`
should work and the CI should pass) independently, without requiring future
commits. This means some modifications can't really be split into several
commits (datamodel changes, in particular, require modifications to several
components at the same time), but makes it easier to revert part of the Pull
Request if some issues are detected in integration testing at a later point.

## Good Commit Messages

Commit messages (and the body of a Pull Request) should be as helpful and
descriptive as possible. If applicable, please include a description of current
behaviour, your changes, and the new behaviour. Justify the reasoning behind
your changes - are they sufficient on their own, or preparing for more changes?
Link any appropriate documentation, issues, or commits (avoiding internal and
publicly inaccessible sources)

## CI

Please make sure your Pull Request passes the Github CI. It will verify that
your code has been properly formatted (can be done locally with `make format`),
builds (`make` and `make check`), and passes the unit tests (`make test`).
The CI will run in the branches of your fork, so you can verify it passes
there before opening a Pull Request.

## Testing

Describe what kind of testing your contribution underwent. If the testing was
manual, please describe the commands or external clients that were used. If the
tests were automated, include at least a cursory description/name of the tests,
when they were regressed, if possible.

Please note that any contribution to the code of the project will likely
require at least some testing to be done. Depending on how central the
component touched in your PR is to the system, the more things could only be
detected in real-world usecases through integration testing.

If a commit has been determined to break integration testing at a later stage,
please note that the first and safest measure will almost always be reverting
the faulty commit. Making sure critical tests are passing remains a priority
over waiting for some commit to be reworked or refactored (which can be worked
on after a revert has been done). Though we are striving to make more tests
public (with failure then being visible to all), as long as some critical tests
remain private, this will also apply to such tests (with maintainers flagging
the breakage preferrably describing at least the gist of the test).

If you are still waiting on some testing to be done, please mark the PR as a
"draft" and make the reasoning clear.

If wider testing is needed (e.g. the change itself is believed to be correct
but may expose latent bugs in other components), lightweight feature flags can
also be used. E.g. an entry in `xapi_globs.ml` and `xapi.conf`, where the
feature/change is defaulted to `off`, to be turned on at a future time
(when e.g. more related PRs land, or it has passed some wider testing).

If your contribution doesn't intend to have any functional changes, please make
that clear as well.

## Feature work

If your contribution adds some new feature or reworks some major aspect of the
system (as opposed to one-off fixes), it can be benefitial to first describe
the plan of your work in a design proposal. Architectural issues are better
spotted early on, and taking a big-picture view can often lead to new insights.

An example of a design proposal is here:

https://github.com/xapi-project/xen-api/pull/6387

If submitting a design first is not possible, include documentation alongside
with your PR describing the work, like it was done in the last three commits
here:

https://github.com/xapi-project/xen-api/pull/6457

Note that the design will often serve as documentation as well - so take care
updating it after the implementation is done to better reflect reality.

## Review process and merge

It can often be useful to address review suggestions with a "fixup" commit
(created manually or with the help of `git commit --fixup=HASH`). This way it
is clear what the original code was and what your fix touches. Once the
fixup commit has been reviewed and the PR approved, please squash the fixup
commits with `git rebase --autosquash` before merging. Otherwise the commits in
the Pull Request should stay as independent commits - we do not require
squashing all the commits into a single one on merge.

If the commit fixes a bug in an earlier, already merged PR then it might be
useful to mention that in the commit, if known.

This can be done by adding this to your GIT configuration:

```
[pretty]
fixes = Fixes: %h (\"%s\")
```

And then running:

```
# git log -1 --pretty=fixes <hash-of-bad-commit>
Fixes: 1c581c074 ("xenopsd: Fix a deadlock during VM suspend")
```

This will print the commit title and hash in a nice format, which can then be
added to the footer of the commit message (alongside the sign-off).

This is useful information to have if any of these commits get backported to
another release in the future, so that we also backport the bugfixes, not just
the buggy commits.
5 changes: 4 additions & 1 deletion README.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Xen API is written mostly in [OCaml](http://caml.inria.fr/ocaml/)
4.07.

Xapi is the main component produced by the Linux Foundation's
[Xapi Project](http://xenproject.org/developers/teams/xapi.html).
[Xapi Project](https://xenproject.org/projects/xapi/).

Build and Install
-----------------
Expand Down Expand Up @@ -108,6 +108,9 @@ It certifies the patch's origin and is licensed under an
appropriate open-source licence to include it in Xapi:
https://git-scm.com/docs/git-commit#Documentation/git-commit.txt---signoff

For more detailed guidelines on what makes a good contribution, see
[CONTRIBUTING](./CONTRIBUTING.md).

Discussions
-----------

Expand Down
4 changes: 2 additions & 2 deletions doc/content/toolstack/features/events/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,9 +72,9 @@ while True:
events = session.xenapi.event.next() # block until a xapi event on a xapi DB object is available
for event in events:
print "received event op=%s class=%s ref=%s" % (event['operation'], event['class'], event['ref'])
if event['class'] == 'vm' and event['operatoin'] == 'mod':
if event['class'] == 'vm' and event['operation'] == 'mod':
vm = event['snapshot']
print "xapi-event on vm: vm_uuid=%s, power_state=%s, current_operation=%s" % (vm['uuid'],vm['name_label'],vm['power_state'],vm['current_operations'].values())
print "xapi-event on vm: vm_uuid=%s, vm_name_label=%s, power_state=%s, current_operation=%s" % (vm['uuid'],vm['name_label'],vm['power_state'],vm['current_operations'].values())
except XenAPI.Failure, e:
if len(e.details) > 0 and e.details[0] == 'EVENTS_LOST':
session.xenapi.event.unregister(["VM","pool"])
Expand Down
Loading
Loading