github.com/cockroachdb/pebble@v1.1.1-0.20240513155919-3622ade60459/objstorage/objstorageprovider/testdata/provider/shared_attach (about) 1 # Basic tests for obtaining the backing of shared objects and attaching them to 2 # another provider. 3 4 open p1 1 5 ---- 6 <local fs> mkdir-all: p1 0755 7 <local fs> open-dir: p1 8 <local fs> open-dir: p1 9 <local fs> create: p1/REMOTE-OBJ-CATALOG-000001 10 <local fs> sync: p1/REMOTE-OBJ-CATALOG-000001 11 <local fs> create: p1/marker.remote-obj-catalog.000001.REMOTE-OBJ-CATALOG-000001 12 <local fs> close: p1/marker.remote-obj-catalog.000001.REMOTE-OBJ-CATALOG-000001 13 <local fs> sync: p1 14 <local fs> sync: p1/REMOTE-OBJ-CATALOG-000001 15 16 create 1 shared 1 100 17 ---- 18 <remote> create object "61a6-1-000001.sst" 19 <remote> close writer for "61a6-1-000001.sst" after 100 bytes 20 <remote> create object "61a6-1-000001.sst.ref.1.000001" 21 <remote> close writer for "61a6-1-000001.sst.ref.1.000001" after 0 bytes 22 23 create 2 shared 2 200 24 ---- 25 <remote> create object "a629-1-000002.sst" 26 <remote> close writer for "a629-1-000002.sst" after 200 bytes 27 <remote> create object "a629-1-000002.sst.ref.1.000002" 28 <remote> close writer for "a629-1-000002.sst.ref.1.000002" after 0 bytes 29 30 create 3 shared 3 300 31 ---- 32 <remote> create object "eaac-1-000003.sst" 33 <remote> close writer for "eaac-1-000003.sst" after 300 bytes 34 <remote> create object "eaac-1-000003.sst.ref.1.000003" 35 <remote> close writer for "eaac-1-000003.sst.ref.1.000003" after 0 bytes 36 37 create 100 local 100 15 38 ---- 39 <local fs> create: p1/000100.sst 40 <local fs> sync-data: p1/000100.sst 41 <local fs> close: p1/000100.sst 42 43 list 44 ---- 45 000001 -> remote://61a6-1-000001.sst 46 000002 -> remote://a629-1-000002.sst 47 000003 -> remote://eaac-1-000003.sst 48 000100 -> p1/000100.sst 49 50 # Can't get backing of local object. 51 save-backing foo 100 52 ---- 53 object 000100 not on remote storage 54 55 save-backing b1 1 56 ---- 57 58 save-backing b2 2 59 ---- 60 61 save-backing b3 3 62 ---- 63 64 close 65 ---- 66 <local fs> sync: p1 67 <local fs> sync: p1/REMOTE-OBJ-CATALOG-000001 68 <local fs> close: p1/REMOTE-OBJ-CATALOG-000001 69 <local fs> close: p1 70 71 open p2 2 72 ---- 73 <local fs> mkdir-all: p2 0755 74 <local fs> open-dir: p2 75 <local fs> open-dir: p2 76 <local fs> create: p2/REMOTE-OBJ-CATALOG-000001 77 <local fs> sync: p2/REMOTE-OBJ-CATALOG-000001 78 <local fs> create: p2/marker.remote-obj-catalog.000001.REMOTE-OBJ-CATALOG-000001 79 <local fs> close: p2/marker.remote-obj-catalog.000001.REMOTE-OBJ-CATALOG-000001 80 <local fs> sync: p2 81 <local fs> sync: p2/REMOTE-OBJ-CATALOG-000001 82 83 create 100 shared 100 15 84 ---- 85 <remote> create object "fd72-2-000100.sst" 86 <remote> close writer for "fd72-2-000100.sst" after 15 bytes 87 <remote> create object "fd72-2-000100.sst.ref.2.000100" 88 <remote> close writer for "fd72-2-000100.sst.ref.2.000100" after 0 bytes 89 90 attach 91 b1 101 92 b2 102 93 b3 103 94 ---- 95 <remote> create object "61a6-1-000001.sst.ref.2.000101" 96 <remote> close writer for "61a6-1-000001.sst.ref.2.000101" after 0 bytes 97 <remote> size of object "61a6-1-000001.sst.ref.1.000001": 0 98 <remote> create object "a629-1-000002.sst.ref.2.000102" 99 <remote> close writer for "a629-1-000002.sst.ref.2.000102" after 0 bytes 100 <remote> size of object "a629-1-000002.sst.ref.1.000002": 0 101 <remote> create object "eaac-1-000003.sst.ref.2.000103" 102 <remote> close writer for "eaac-1-000003.sst.ref.2.000103" after 0 bytes 103 <remote> size of object "eaac-1-000003.sst.ref.1.000003": 0 104 <local fs> sync: p2/REMOTE-OBJ-CATALOG-000001 105 000101 -> remote://61a6-1-000001.sst 106 000102 -> remote://a629-1-000002.sst 107 000103 -> remote://eaac-1-000003.sst 108 109 list 110 ---- 111 000100 -> remote://fd72-2-000100.sst 112 000101 -> remote://61a6-1-000001.sst 113 000102 -> remote://a629-1-000002.sst 114 000103 -> remote://eaac-1-000003.sst 115 116 read 101 117 0 100 118 15 10 119 ---- 120 <remote> size of object "61a6-1-000001.sst.ref.2.000101": 0 121 <remote> create reader for object "61a6-1-000001.sst": 100 bytes 122 size: 100 123 <remote> read object "61a6-1-000001.sst" at 0 (length 100) 124 0 100: ok (salt 1) 125 <remote> read object "61a6-1-000001.sst" at 15 (length 10) 126 15 10: ok (salt 1) 127 <remote> close reader for "61a6-1-000001.sst" 128 129 read 102 130 0 200 131 90 100 132 ---- 133 <remote> size of object "a629-1-000002.sst.ref.2.000102": 0 134 <remote> create reader for object "a629-1-000002.sst": 200 bytes 135 size: 200 136 <remote> read object "a629-1-000002.sst" at 0 (length 200) 137 0 200: ok (salt 2) 138 <remote> read object "a629-1-000002.sst" at 90 (length 100) 139 90 100: ok (salt 2) 140 <remote> close reader for "a629-1-000002.sst" 141 142 read 103 143 0 300 144 ---- 145 <remote> size of object "eaac-1-000003.sst.ref.2.000103": 0 146 <remote> create reader for object "eaac-1-000003.sst": 300 bytes 147 size: 300 148 <remote> read object "eaac-1-000003.sst" at 0 (length 300) 149 0 300: ok (salt 3) 150 <remote> close reader for "eaac-1-000003.sst"