Friday 12 February 2010

How to use an error class for ignoring all errors

Create a new error class on replication server:

create error class ignore_all
go

On RSSD
rs_init_erroractions ignore_all, rs_sqlserver_error_class
go
This would initialise the new error class with all errors in default error class

On the Replication server, assign action ignore to all error types

assign action ignore for ignore_all to 0
assign action ignore for ignore_all to 102
assign action ignore for ignore_all to 215
assign action ignore for ignore_all to 250
assign action ignore for ignore_all to 273
assign action ignore for ignore_all to 275
assign action ignore for ignore_all to 282
assign action ignore for ignore_all to 289
assign action ignore for ignore_all to 310
assign action ignore for ignore_all to 314
assign action ignore for ignore_all to 417
assign action ignore for ignore_all to 502
assign action ignore for ignore_all to 526
assign action ignore for ignore_all to 540
assign action ignore for ignore_all to 636
assign action ignore for ignore_all to 646
assign action ignore for ignore_all to 660
assign action ignore for ignore_all to 701
assign action ignore for ignore_all to 807
assign action ignore for ignore_all to 841
assign action ignore for ignore_all to 846
assign action ignore for ignore_all to 847
assign action ignore for ignore_all to 905
assign action ignore for ignore_all to 910
assign action ignore for ignore_all to 918
assign action ignore for ignore_all to 921
assign action ignore for ignore_all to 922
assign action ignore for ignore_all to 924
assign action ignore for ignore_all to 927
assign action ignore for ignore_all to 928
assign action ignore for ignore_all to 935
assign action ignore for ignore_all to 936
assign action ignore for ignore_all to 937
assign action ignore for ignore_all to 938
assign action ignore for ignore_all to 948
assign action ignore for ignore_all to 950
assign action ignore for ignore_all to 951
assign action ignore for ignore_all to 1028
assign action ignore for ignore_all to 1101
assign action ignore for ignore_all to 1105
assign action ignore for ignore_all to 1126
assign action ignore for ignore_all to 1204
assign action ignore for ignore_all to 1205
assign action ignore for ignore_all to 1283
assign action ignore for ignore_all to 1510
assign action ignore for ignore_all to 1512
assign action ignore for ignore_all to 1516
assign action ignore for ignore_all to 1517
assign action ignore for ignore_all to 1518
assign action ignore for ignore_all to 1524
assign action ignore for ignore_all to 1566
assign action ignore for ignore_all to 1601
assign action ignore for ignore_all to 1624
assign action ignore for ignore_all to 1703
assign action ignore for ignore_all to 1708
assign action ignore for ignore_all to 1713
assign action ignore for ignore_all to 1728
assign action ignore for ignore_all to 1805
assign action ignore for ignore_all to 1812
assign action ignore for ignore_all to 1821
assign action ignore for ignore_all to 1911
assign action ignore for ignore_all to 1912
assign action ignore for ignore_all to 1918
assign action ignore for ignore_all to 2403
assign action ignore for ignore_all to 2411
assign action ignore for ignore_all to 2412
assign action ignore for ignore_all to 2414
assign action ignore for ignore_all to 2415
assign action ignore for ignore_all to 2416
assign action ignore for ignore_all to 2528
assign action ignore for ignore_all to 2536
assign action ignore for ignore_all to 2537
assign action ignore for ignore_all to 2538
assign action ignore for ignore_all to 2539
assign action ignore for ignore_all to 2551
assign action ignore for ignore_all to 2552
assign action ignore for ignore_all to 2553
assign action ignore for ignore_all to 2554
assign action ignore for ignore_all to 2555
assign action ignore for ignore_all to 2569
assign action ignore for ignore_all to 2570
assign action ignore for ignore_all to 2572
assign action ignore for ignore_all to 2579
assign action ignore for ignore_all to 2583
assign action ignore for ignore_all to 2592
assign action ignore for ignore_all to 2593
assign action ignore for ignore_all to 2601
assign action ignore for ignore_all to 2605
assign action ignore for ignore_all to 2606
assign action ignore for ignore_all to 2607
assign action ignore for ignore_all to 2608
assign action ignore for ignore_all to 2611
assign action ignore for ignore_all to 2612
assign action ignore for ignore_all to 2614
assign action ignore for ignore_all to 2701
assign action ignore for ignore_all to 2704
assign action ignore for ignore_all to 2707
assign action ignore for ignore_all to 2708
assign action ignore for ignore_all to 2709
assign action ignore for ignore_all to 2712
assign action ignore for ignore_all to 2713
assign action ignore for ignore_all to 2720
assign action ignore for ignore_all to 2722
assign action ignore for ignore_all to 2723
assign action ignore for ignore_all to 2725
assign action ignore for ignore_all to 2726
assign action ignore for ignore_all to 2785
assign action ignore for ignore_all to 2788
assign action ignore for ignore_all to 2789
assign action ignore for ignore_all to 2902
assign action ignore for ignore_all to 3014
assign action ignore for ignore_all to 3015
assign action ignore for ignore_all to 3116
assign action ignore for ignore_all to 3124
assign action ignore for ignore_all to 3125
assign action ignore for ignore_all to 3126
assign action ignore for ignore_all to 3127
assign action ignore for ignore_all to 3128
assign action ignore for ignore_all to 3134
assign action ignore for ignore_all to 3135
assign action ignore for ignore_all to 3136
assign action ignore for ignore_all to 3216
assign action ignore for ignore_all to 3227
assign action ignore for ignore_all to 3229
assign action ignore for ignore_all to 3236
assign action ignore for ignore_all to 3309
assign action ignore for ignore_all to 3405
assign action ignore for ignore_all to 3406
assign action ignore for ignore_all to 3407
assign action ignore for ignore_all to 3408
assign action ignore for ignore_all to 3409
assign action ignore for ignore_all to 3410
assign action ignore for ignore_all to 3411
assign action ignore for ignore_all to 3433
assign action ignore for ignore_all to 3442
assign action ignore for ignore_all to 3444
assign action ignore for ignore_all to 3448
assign action ignore for ignore_all to 3449
assign action ignore for ignore_all to 3462
assign action ignore for ignore_all to 3470
assign action ignore for ignore_all to 3506
assign action ignore for ignore_all to 3507
assign action ignore for ignore_all to 3604
assign action ignore for ignore_all to 3605
assign action ignore for ignore_all to 3612
assign action ignore for ignore_all to 3613
assign action ignore for ignore_all to 3614
assign action ignore for ignore_all to 3615
assign action ignore for ignore_all to 3617
assign action ignore for ignore_all to 3620
assign action ignore for ignore_all to 3621
assign action ignore for ignore_all to 3625
assign action ignore for ignore_all to 3629
assign action ignore for ignore_all to 3717
assign action ignore for ignore_all to 3721
assign action ignore for ignore_all to 3733
assign action ignore for ignore_all to 3734
assign action ignore for ignore_all to 3735
assign action ignore for ignore_all to 3736
assign action ignore for ignore_all to 4016
assign action ignore for ignore_all to 4017
assign action ignore for ignore_all to 4018
assign action ignore for ignore_all to 4019
assign action ignore for ignore_all to 4023
assign action ignore for ignore_all to 4026
assign action ignore for ignore_all to 4027
assign action ignore for ignore_all to 4028
assign action ignore for ignore_all to 4029
assign action ignore for ignore_all to 4030
assign action ignore for ignore_all to 4031
assign action ignore for ignore_all to 4032
assign action ignore for ignore_all to 4033
assign action ignore for ignore_all to 4034
assign action ignore for ignore_all to 4035
assign action ignore for ignore_all to 4036
assign action ignore for ignore_all to 4037
assign action ignore for ignore_all to 4038
assign action ignore for ignore_all to 4039
assign action ignore for ignore_all to 4040
assign action ignore for ignore_all to 4041
assign action ignore for ignore_all to 4042
assign action ignore for ignore_all to 4043
assign action ignore for ignore_all to 4044
assign action ignore for ignore_all to 4045
assign action ignore for ignore_all to 4046
assign action ignore for ignore_all to 4304
assign action ignore for ignore_all to 4407
assign action ignore for ignore_all to 4410
assign action ignore for ignore_all to 4419
assign action ignore for ignore_all to 4621
assign action ignore for ignore_all to 4622
assign action ignore for ignore_all to 4702
assign action ignore for ignore_all to 4704
assign action ignore for ignore_all to 4705
assign action ignore for ignore_all to 4707
assign action ignore for ignore_all to 4800
assign action ignore for ignore_all to 4829
assign action ignore for ignore_all to 4903
assign action ignore for ignore_all to 4904
assign action ignore for ignore_all to 4907
assign action ignore for ignore_all to 4908
assign action ignore for ignore_all to 5003
assign action ignore for ignore_all to 5005
assign action ignore for ignore_all to 5007
assign action ignore for ignore_all to 5010
assign action ignore for ignore_all to 5012
assign action ignore for ignore_all to 5018
assign action ignore for ignore_all to 5026
assign action ignore for ignore_all to 5027
assign action ignore for ignore_all to 5089
assign action ignore for ignore_all to 5110
assign action ignore for ignore_all to 5111
assign action ignore for ignore_all to 5112
assign action ignore for ignore_all to 5113
assign action ignore for ignore_all to 5121
assign action ignore for ignore_all to 5124
assign action ignore for ignore_all to 5135
assign action ignore for ignore_all to 5136
assign action ignore for ignore_all to 5140
assign action ignore for ignore_all to 5143
assign action ignore for ignore_all to 5147
assign action ignore for ignore_all to 5208
assign action ignore for ignore_all to 5701
assign action ignore for ignore_all to 5703
assign action ignore for ignore_all to 5704
assign action ignore for ignore_all to 5826
assign action ignore for ignore_all to 5827
assign action ignore for ignore_all to 5832
assign action ignore for ignore_all to 5836
assign action ignore for ignore_all to 5837
assign action ignore for ignore_all to 5838
assign action ignore for ignore_all to 5858
assign action ignore for ignore_all to 5866
assign action ignore for ignore_all to 5884
assign action ignore for ignore_all to 5898
assign action ignore for ignore_all to 6001
assign action ignore for ignore_all to 6005
assign action ignore for ignore_all to 6006
assign action ignore for ignore_all to 6201
assign action ignore for ignore_all to 6202
assign action ignore for ignore_all to 6203
assign action ignore for ignore_all to 6204
assign action ignore for ignore_all to 6205
assign action ignore for ignore_all to 6206
assign action ignore for ignore_all to 6207
assign action ignore for ignore_all to 6208
assign action ignore for ignore_all to 6209
assign action ignore for ignore_all to 6210
assign action ignore for ignore_all to 6211
assign action ignore for ignore_all to 6212
assign action ignore for ignore_all to 6213
assign action ignore for ignore_all to 6214
assign action ignore for ignore_all to 6215
assign action ignore for ignore_all to 6216
assign action ignore for ignore_all to 6217
assign action ignore for ignore_all to 6218
assign action ignore for ignore_all to 6219
assign action ignore for ignore_all to 6220
assign action ignore for ignore_all to 6221
assign action ignore for ignore_all to 6222
assign action ignore for ignore_all to 6223
assign action ignore for ignore_all to 6224
assign action ignore for ignore_all to 6225
assign action ignore for ignore_all to 6227
assign action ignore for ignore_all to 6228
assign action ignore for ignore_all to 6229
assign action ignore for ignore_all to 6230
assign action ignore for ignore_all to 6231
assign action ignore for ignore_all to 6232
assign action ignore for ignore_all to 6233
assign action ignore for ignore_all to 6234
assign action ignore for ignore_all to 6235
assign action ignore for ignore_all to 6236
assign action ignore for ignore_all to 6237
assign action ignore for ignore_all to 6238
assign action ignore for ignore_all to 6239
assign action ignore for ignore_all to 6240
assign action ignore for ignore_all to 6241
assign action ignore for ignore_all to 6242
assign action ignore for ignore_all to 6243
assign action ignore for ignore_all to 6244
assign action ignore for ignore_all to 6245
assign action ignore for ignore_all to 6246
assign action ignore for ignore_all to 6247
assign action ignore for ignore_all to 6248
assign action ignore for ignore_all to 6249
assign action ignore for ignore_all to 6250
assign action ignore for ignore_all to 6251
assign action ignore for ignore_all to 6252
assign action ignore for ignore_all to 6253
assign action ignore for ignore_all to 6254
assign action ignore for ignore_all to 6255
assign action ignore for ignore_all to 6256
assign action ignore for ignore_all to 6257
assign action ignore for ignore_all to 6268
assign action ignore for ignore_all to 6269
assign action ignore for ignore_all to 6270
assign action ignore for ignore_all to 6271
assign action ignore for ignore_all to 6272
assign action ignore for ignore_all to 6273
assign action ignore for ignore_all to 6274
assign action ignore for ignore_all to 6275
assign action ignore for ignore_all to 6276
assign action ignore for ignore_all to 6277
assign action ignore for ignore_all to 6278
assign action ignore for ignore_all to 6279
assign action ignore for ignore_all to 6280
assign action ignore for ignore_all to 6281
assign action ignore for ignore_all to 6282
assign action ignore for ignore_all to 6283
assign action ignore for ignore_all to 6284
assign action ignore for ignore_all to 6285
assign action ignore for ignore_all to 6286
assign action ignore for ignore_all to 6287
assign action ignore for ignore_all to 6288
assign action ignore for ignore_all to 6289
assign action ignore for ignore_all to 6290
assign action ignore for ignore_all to 6291
assign action ignore for ignore_all to 7012
assign action ignore for ignore_all to 7013
assign action ignore for ignore_all to 7014
assign action ignore for ignore_all to 7015
assign action ignore for ignore_all to 7110
assign action ignore for ignore_all to 7112
assign action ignore for ignore_all to 7140
assign action ignore for ignore_all to 7201
assign action ignore for ignore_all to 7202
assign action ignore for ignore_all to 7203
assign action ignore for ignore_all to 7206
assign action ignore for ignore_all to 7207
assign action ignore for ignore_all to 7208
assign action ignore for ignore_all to 7234
assign action ignore for ignore_all to 7337
assign action ignore for ignore_all to 7338
assign action ignore for ignore_all to 7339
assign action ignore for ignore_all to 7340
assign action ignore for ignore_all to 7341
assign action ignore for ignore_all to 7380
assign action ignore for ignore_all to 7381
assign action ignore for ignore_all to 7412
assign action ignore for ignore_all to 7413
assign action ignore for ignore_all to 7415
assign action ignore for ignore_all to 7770
assign action ignore for ignore_all to 7777
assign action ignore for ignore_all to 7783
assign action ignore for ignore_all to 7788
assign action ignore for ignore_all to 7904
assign action ignore for ignore_all to 7905
assign action ignore for ignore_all to 7906
assign action ignore for ignore_all to 7908
assign action ignore for ignore_all to 7910
assign action ignore for ignore_all to 7911
assign action ignore for ignore_all to 7912
assign action ignore for ignore_all to 7913
assign action ignore for ignore_all to 7916
assign action ignore for ignore_all to 7917
assign action ignore for ignore_all to 7918
assign action ignore for ignore_all to 7920
assign action ignore for ignore_all to 7922
assign action ignore for ignore_all to 7923
assign action ignore for ignore_all to 7924
assign action ignore for ignore_all to 7925
assign action ignore for ignore_all to 7926
assign action ignore for ignore_all to 7927
assign action ignore for ignore_all to 7929
assign action ignore for ignore_all to 7932
assign action ignore for ignore_all to 7933
assign action ignore for ignore_all to 7934
assign action ignore for ignore_all to 7942
assign action ignore for ignore_all to 7944
assign action ignore for ignore_all to 7945
assign action ignore for ignore_all to 7946
assign action ignore for ignore_all to 7947
assign action ignore for ignore_all to 7948
assign action ignore for ignore_all to 7954
assign action ignore for ignore_all to 7965
assign action ignore for ignore_all to 7970
assign action ignore for ignore_all to 7971
assign action ignore for ignore_all to 7972
assign action ignore for ignore_all to 7989
assign action ignore for ignore_all to 8001
assign action ignore for ignore_all to 8207
assign action ignore for ignore_all to 8214
assign action ignore for ignore_all to 8217
assign action ignore for ignore_all to 8218
assign action ignore for ignore_all to 8705
assign action ignore for ignore_all to 9109
assign action ignore for ignore_all to 9131
assign action ignore for ignore_all to 9137
assign action ignore for ignore_all to 9141
assign action ignore for ignore_all to 9142
assign action ignore for ignore_all to 9149
assign action ignore for ignore_all to 9318
assign action ignore for ignore_all to 9319
assign action ignore for ignore_all to 9332
assign action ignore for ignore_all to 9333
assign action ignore for ignore_all to 9334
assign action ignore for ignore_all to 9501
assign action ignore for ignore_all to 9506
assign action ignore for ignore_all to 9712
assign action ignore for ignore_all to 9713
assign action ignore for ignore_all to 9714
assign action ignore for ignore_all to 9715
assign action ignore for ignore_all to 9716
assign action ignore for ignore_all to 9717
assign action ignore for ignore_all to 9718
assign action ignore for ignore_all to 9719
assign action ignore for ignore_all to 9720
assign action ignore for ignore_all to 9721
assign action ignore for ignore_all to 9722
assign action ignore for ignore_all to 9723
assign action ignore for ignore_all to 9724
assign action ignore for ignore_all to 9725
assign action ignore for ignore_all to 9726
assign action ignore for ignore_all to 9727
assign action ignore for ignore_all to 9728
assign action ignore for ignore_all to 9729
assign action ignore for ignore_all to 9730
assign action ignore for ignore_all to 9731
assign action ignore for ignore_all to 9732
assign action ignore for ignore_all to 9801
assign action ignore for ignore_all to 9804
assign action ignore for ignore_all to 9806
assign action ignore for ignore_all to 9807
assign action ignore for ignore_all to 9808
assign action ignore for ignore_all to 9904
assign action ignore for ignore_all to 9905
assign action ignore for ignore_all to 9907
assign action ignore for ignore_all to 9909
assign action ignore for ignore_all to 9911
assign action ignore for ignore_all to 9912
assign action ignore for ignore_all to 9925
assign action ignore for ignore_all to 10201
assign action ignore for ignore_all to 10202
assign action ignore for ignore_all to 10203
assign action ignore for ignore_all to 10204
assign action ignore for ignore_all to 10205
assign action ignore for ignore_all to 10206
assign action ignore for ignore_all to 10207
assign action ignore for ignore_all to 10208
assign action ignore for ignore_all to 10209
assign action ignore for ignore_all to 10210
assign action ignore for ignore_all to 10211
assign action ignore for ignore_all to 10212
assign action ignore for ignore_all to 10213
assign action ignore for ignore_all to 10214
assign action ignore for ignore_all to 10401
assign action ignore for ignore_all to 10402
assign action ignore for ignore_all to 10403
assign action ignore for ignore_all to 10404
assign action ignore for ignore_all to 10405
assign action ignore for ignore_all to 10406
assign action ignore for ignore_all to 10407
assign action ignore for ignore_all to 10408
assign action ignore for ignore_all to 10409
assign action ignore for ignore_all to 10410
assign action ignore for ignore_all to 10411
assign action ignore for ignore_all to 10412
assign action ignore for ignore_all to 10413
assign action ignore for ignore_all to 10414
assign action ignore for ignore_all to 10415
assign action ignore for ignore_all to 10416
assign action ignore for ignore_all to 10417
assign action ignore for ignore_all to 10418
assign action ignore for ignore_all to 10419
assign action ignore for ignore_all to 10420
assign action ignore for ignore_all to 10421
assign action ignore for ignore_all to 10422
assign action ignore for ignore_all to 10423
assign action ignore for ignore_all to 10424
assign action ignore for ignore_all to 10425
assign action ignore for ignore_all to 10426
assign action ignore for ignore_all to 10427
assign action ignore for ignore_all to 10428
assign action ignore for ignore_all to 10429
assign action ignore for ignore_all to 10430
assign action ignore for ignore_all to 10431
assign action ignore for ignore_all to 10432
assign action ignore for ignore_all to 10433
assign action ignore for ignore_all to 10434
assign action ignore for ignore_all to 10435
assign action ignore for ignore_all to 10436
assign action ignore for ignore_all to 10437
assign action ignore for ignore_all to 10438
assign action ignore for ignore_all to 10439
assign action ignore for ignore_all to 10440
assign action ignore for ignore_all to 10441
assign action ignore for ignore_all to 10442
assign action ignore for ignore_all to 10443
assign action ignore for ignore_all to 10444
assign action ignore for ignore_all to 10445
assign action ignore for ignore_all to 10446
assign action ignore for ignore_all to 10447
assign action ignore for ignore_all to 10448
assign action ignore for ignore_all to 10449
assign action ignore for ignore_all to 10450
assign action ignore for ignore_all to 10451
assign action ignore for ignore_all to 10452
assign action ignore for ignore_all to 10453
assign action ignore for ignore_all to 10454
assign action ignore for ignore_all to 10455
assign action ignore for ignore_all to 10456
assign action ignore for ignore_all to 10457
assign action ignore for ignore_all to 10458
assign action ignore for ignore_all to 10459
assign action ignore for ignore_all to 10460
assign action ignore for ignore_all to 10461
assign action ignore for ignore_all to 10462
assign action ignore for ignore_all to 10463
assign action ignore for ignore_all to 10464
assign action ignore for ignore_all to 10465
assign action ignore for ignore_all to 10466
assign action ignore for ignore_all to 10467
assign action ignore for ignore_all to 10468
assign action ignore for ignore_all to 10469
assign action ignore for ignore_all to 10470
assign action ignore for ignore_all to 10471
assign action ignore for ignore_all to 10472
assign action ignore for ignore_all to 10473
assign action ignore for ignore_all to 10474
assign action ignore for ignore_all to 10475
assign action ignore for ignore_all to 10476
assign action ignore for ignore_all to 10477
assign action ignore for ignore_all to 10478
assign action ignore for ignore_all to 10479
assign action ignore for ignore_all to 10480
assign action ignore for ignore_all to 10481
assign action ignore for ignore_all to 10482
assign action ignore for ignore_all to 10483
assign action ignore for ignore_all to 13001
assign action ignore for ignore_all to 13002
assign action ignore for ignore_all to 13003
assign action ignore for ignore_all to 13004
assign action ignore for ignore_all to 13005
assign action ignore for ignore_all to 13006
assign action ignore for ignore_all to 13007
assign action ignore for ignore_all to 13008
assign action ignore for ignore_all to 13009
assign action ignore for ignore_all to 13010
assign action ignore for ignore_all to 13011
assign action ignore for ignore_all to 13012
assign action ignore for ignore_all to 13013
assign action ignore for ignore_all to 13014
assign action ignore for ignore_all to 13015
assign action ignore for ignore_all to 13016
assign action ignore for ignore_all to 13017
assign action ignore for ignore_all to 13018
assign action ignore for ignore_all to 13019
assign action ignore for ignore_all to 13020
assign action ignore for ignore_all to 13021
assign action ignore for ignore_all to 13022
assign action ignore for ignore_all to 13023
assign action ignore for ignore_all to 13024
assign action ignore for ignore_all to 13025
assign action ignore for ignore_all to 13026
assign action ignore for ignore_all to 13027
assign action ignore for ignore_all to 13028
assign action ignore for ignore_all to 13029
assign action ignore for ignore_all to 13030
assign action ignore for ignore_all to 13031
assign action ignore for ignore_all to 13032
assign action ignore for ignore_all to 13033
assign action ignore for ignore_all to 13034
assign action ignore for ignore_all to 13035
assign action ignore for ignore_all to 13036
assign action ignore for ignore_all to 13037
assign action ignore for ignore_all to 13038
assign action ignore for ignore_all to 13039
assign action ignore for ignore_all to 13040
assign action ignore for ignore_all to 13041
assign action ignore for ignore_all to 13042
assign action ignore for ignore_all to 13043
assign action ignore for ignore_all to 13044
assign action ignore for ignore_all to 13045
assign action ignore for ignore_all to 13046
assign action ignore for ignore_all to 13047
assign action ignore for ignore_all to 13048
assign action ignore for ignore_all to 13049
assign action ignore for ignore_all to 13050
assign action ignore for ignore_all to 13051
assign action ignore for ignore_all to 13052
assign action ignore for ignore_all to 13053
assign action ignore for ignore_all to 13054
assign action ignore for ignore_all to 13055
assign action ignore for ignore_all to 13056
assign action ignore for ignore_all to 13057
assign action ignore for ignore_all to 13058
assign action ignore for ignore_all to 13059
assign action ignore for ignore_all to 13060
assign action ignore for ignore_all to 13061
assign action ignore for ignore_all to 13062
assign action ignore for ignore_all to 13065
assign action ignore for ignore_all to 13066
assign action ignore for ignore_all to 13067
assign action ignore for ignore_all to 13068
assign action ignore for ignore_all to 13069
assign action ignore for ignore_all to 13070
assign action ignore for ignore_all to 13071
assign action ignore for ignore_all to 13072
assign action ignore for ignore_all to 13073
assign action ignore for ignore_all to 13074
assign action ignore for ignore_all to 13075
assign action ignore for ignore_all to 13076
assign action ignore for ignore_all to 13077
assign action ignore for ignore_all to 13078
assign action ignore for ignore_all to 13079
assign action ignore for ignore_all to 13080
assign action ignore for ignore_all to 13081
assign action ignore for ignore_all to 13082
assign action ignore for ignore_all to 13083
assign action ignore for ignore_all to 13084
assign action ignore for ignore_all to 13085
assign action ignore for ignore_all to 13086
assign action ignore for ignore_all to 13087
assign action ignore for ignore_all to 13088
assign action ignore for ignore_all to 13089
assign action ignore for ignore_all to 13090
assign action ignore for ignore_all to 13091
assign action ignore for ignore_all to 13092
assign action ignore for ignore_all to 13093
assign action ignore for ignore_all to 13094
assign action ignore for ignore_all to 13095
assign action ignore for ignore_all to 13096
assign action ignore for ignore_all to 13097
assign action ignore for ignore_all to 13098
assign action ignore for ignore_all to 13099
assign action ignore for ignore_all to 13100
assign action ignore for ignore_all to 13101
assign action ignore for ignore_all to 13102
assign action ignore for ignore_all to 13103
assign action ignore for ignore_all to 13104
assign action ignore for ignore_all to 13105
assign action ignore for ignore_all to 13106
assign action ignore for ignore_all to 13107
assign action ignore for ignore_all to 13108
assign action ignore for ignore_all to 13109
assign action ignore for ignore_all to 13110
assign action ignore for ignore_all to 13111
assign action ignore for ignore_all to 13112
assign action ignore for ignore_all to 13113
assign action ignore for ignore_all to 13114
assign action ignore for ignore_all to 13115
assign action ignore for ignore_all to 13116
assign action ignore for ignore_all to 13117
assign action ignore for ignore_all to 13118
assign action ignore for ignore_all to 13119
assign action ignore for ignore_all to 13120
assign action ignore for ignore_all to 17027
assign action ignore for ignore_all to 17028
assign action ignore for ignore_all to 17029
assign action ignore for ignore_all to 17030
assign action ignore for ignore_all to 17031
assign action ignore for ignore_all to 17032
assign action ignore for ignore_all to 17033
assign action ignore for ignore_all to 17034
assign action ignore for ignore_all to 17035
assign action ignore for ignore_all to 17036
assign action ignore for ignore_all to 17037
assign action ignore for ignore_all to 17038
assign action ignore for ignore_all to 17039
assign action ignore for ignore_all to 17040
assign action ignore for ignore_all to 17041
assign action ignore for ignore_all to 17042
assign action ignore for ignore_all to 17043
assign action ignore for ignore_all to 17044
assign action ignore for ignore_all to 17045
assign action ignore for ignore_all to 17046
assign action ignore for ignore_all to 17047
assign action ignore for ignore_all to 17048
assign action ignore for ignore_all to 17050
assign action ignore for ignore_all to 17051
assign action ignore for ignore_all to 17052
assign action ignore for ignore_all to 17053
assign action ignore for ignore_all to 17054
assign action ignore for ignore_all to 17055
assign action ignore for ignore_all to 17056
assign action ignore for ignore_all to 17057
assign action ignore for ignore_all to 17058
assign action ignore for ignore_all to 17059
assign action ignore for ignore_all to 17060
assign action ignore for ignore_all to 17061
assign action ignore for ignore_all to 17062
assign action ignore for ignore_all to 17063
assign action ignore for ignore_all to 17064
assign action ignore for ignore_all to 17065
assign action ignore for ignore_all to 17066
assign action ignore for ignore_all to 17067
assign action ignore for ignore_all to 17068
assign action ignore for ignore_all to 17069
assign action ignore for ignore_all to 17070
assign action ignore for ignore_all to 17075
assign action ignore for ignore_all to 17080
assign action ignore for ignore_all to 17081
assign action ignore for ignore_all to 17082
assign action ignore for ignore_all to 17083
assign action ignore for ignore_all to 17084
assign action ignore for ignore_all to 17085
assign action ignore for ignore_all to 17086
assign action ignore for ignore_all to 17087
assign action ignore for ignore_all to 17088
assign action ignore for ignore_all to 17089
assign action ignore for ignore_all to 17090
assign action ignore for ignore_all to 17091
assign action ignore for ignore_all to 17100
assign action ignore for ignore_all to 17101
assign action ignore for ignore_all to 17102
assign action ignore for ignore_all to 17103
assign action ignore for ignore_all to 17104
assign action ignore for ignore_all to 17105
assign action ignore for ignore_all to 17106
assign action ignore for ignore_all to 17110
assign action ignore for ignore_all to 17111
assign action ignore for ignore_all to 17112
assign action ignore for ignore_all to 17120
assign action ignore for ignore_all to 17121
assign action ignore for ignore_all to 17122
assign action ignore for ignore_all to 17123
assign action ignore for ignore_all to 17124
assign action ignore for ignore_all to 17125
assign action ignore for ignore_all to 17126
assign action ignore for ignore_all to 17127
assign action ignore for ignore_all to 17128
assign action ignore for ignore_all to 17129
assign action ignore for ignore_all to 17130
assign action ignore for ignore_all to 17131
assign action ignore for ignore_all to 17132
assign action ignore for ignore_all to 17133
assign action ignore for ignore_all to 17134
assign action ignore for ignore_all to 17135
assign action ignore for ignore_all to 17136
assign action ignore for ignore_all to 17137
assign action ignore for ignore_all to 17138
assign action ignore for ignore_all to 17139
assign action ignore for ignore_all to 17140
assign action ignore for ignore_all to 17141
assign action ignore for ignore_all to 17142
assign action ignore for ignore_all to 17143
assign action ignore for ignore_all to 17144
assign action ignore for ignore_all to 17145
assign action ignore for ignore_all to 17146
assign action ignore for ignore_all to 17147
assign action ignore for ignore_all to 17214
assign action ignore for ignore_all to 17221
assign action ignore for ignore_all to 17235
assign action ignore for ignore_all to 17243
assign action ignore for ignore_all to 17255
assign action ignore for ignore_all to 17264
assign action ignore for ignore_all to 17273
assign action ignore for ignore_all to 17276
assign action ignore for ignore_all to 17287
assign action ignore for ignore_all to 17289
assign action ignore for ignore_all to 17291
assign action ignore for ignore_all to 17293
assign action ignore for ignore_all to 17294
assign action ignore for ignore_all to 17295
assign action ignore for ignore_all to 17300
assign action ignore for ignore_all to 17309
assign action ignore for ignore_all to 17319
assign action ignore for ignore_all to 17320
assign action ignore for ignore_all to 17321
assign action ignore for ignore_all to 17324
assign action ignore for ignore_all to 17335
assign action ignore for ignore_all to 17341
assign action ignore for ignore_all to 17345
assign action ignore for ignore_all to 17347
assign action ignore for ignore_all to 17348
assign action ignore for ignore_all to 17351
assign action ignore for ignore_all to 17354
assign action ignore for ignore_all to 17356
assign action ignore for ignore_all to 17357
assign action ignore for ignore_all to 17364
assign action ignore for ignore_all to 17365
assign action ignore for ignore_all to 17366
assign action ignore for ignore_all to 17370
assign action ignore for ignore_all to 17402
assign action ignore for ignore_all to 17416
assign action ignore for ignore_all to 17419
assign action ignore for ignore_all to 17420
assign action ignore for ignore_all to 17423
assign action ignore for ignore_all to 17430
assign action ignore for ignore_all to 17431
assign action ignore for ignore_all to 17432
assign action ignore for ignore_all to 17433
assign action ignore for ignore_all to 17434
assign action ignore for ignore_all to 17442
assign action ignore for ignore_all to 17452
assign action ignore for ignore_all to 17462
assign action ignore for ignore_all to 17463
assign action ignore for ignore_all to 17464
assign action ignore for ignore_all to 17472
assign action ignore for ignore_all to 17480
assign action ignore for ignore_all to 17483
assign action ignore for ignore_all to 17489
assign action ignore for ignore_all to 17490
assign action ignore for ignore_all to 17495
assign action ignore for ignore_all to 17496
assign action ignore for ignore_all to 17500
assign action ignore for ignore_all to 17502
assign action ignore for ignore_all to 17507
assign action ignore for ignore_all to 17511
assign action ignore for ignore_all to 17512
assign action ignore for ignore_all to 17525
assign action ignore for ignore_all to 17526
assign action ignore for ignore_all to 17527
assign action ignore for ignore_all to 17528
assign action ignore for ignore_all to 17531
assign action ignore for ignore_all to 17532
assign action ignore for ignore_all to 17533
assign action ignore for ignore_all to 17542
assign action ignore for ignore_all to 17547
assign action ignore for ignore_all to 17548
assign action ignore for ignore_all to 17550
assign action ignore for ignore_all to 17551
assign action ignore for ignore_all to 17552
assign action ignore for ignore_all to 17567
assign action ignore for ignore_all to 17570
assign action ignore for ignore_all to 17571
assign action ignore for ignore_all to 17591
assign action ignore for ignore_all to 17592
assign action ignore for ignore_all to 17594
assign action ignore for ignore_all to 17611
assign action ignore for ignore_all to 17612
assign action ignore for ignore_all to 17613
assign action ignore for ignore_all to 17614
assign action ignore for ignore_all to 17615
assign action ignore for ignore_all to 17616
assign action ignore for ignore_all to 17617
assign action ignore for ignore_all to 17619
assign action ignore for ignore_all to 17620
assign action ignore for ignore_all to 17661
assign action ignore for ignore_all to 17662
assign action ignore for ignore_all to 17671
assign action ignore for ignore_all to 17672
assign action ignore for ignore_all to 17673
assign action ignore for ignore_all to 17677
assign action ignore for ignore_all to 17686
assign action ignore for ignore_all to 17687
assign action ignore for ignore_all to 17690
assign action ignore for ignore_all to 17691
assign action ignore for ignore_all to 17692
assign action ignore for ignore_all to 17693
assign action ignore for ignore_all to 17694
assign action ignore for ignore_all to 17700
assign action ignore for ignore_all to 17710
assign action ignore for ignore_all to 17711
assign action ignore for ignore_all to 17714
assign action ignore for ignore_all to 17715
assign action ignore for ignore_all to 17721
assign action ignore for ignore_all to 17735
assign action ignore for ignore_all to 17750
assign action ignore for ignore_all to 17762
assign action ignore for ignore_all to 17770
assign action ignore for ignore_all to 17772
assign action ignore for ignore_all to 17777
assign action ignore for ignore_all to 17778
assign action ignore for ignore_all to 17781
assign action ignore for ignore_all to 17784
assign action ignore for ignore_all to 17789
assign action ignore for ignore_all to 17794
assign action ignore for ignore_all to 17796
assign action ignore for ignore_all to 17801
assign action ignore for ignore_all to 17807
assign action ignore for ignore_all to 17810
assign action ignore for ignore_all to 17811
assign action ignore for ignore_all to 17830
assign action ignore for ignore_all to 17831
assign action ignore for ignore_all to 17832
assign action ignore for ignore_all to 17841
assign action ignore for ignore_all to 17846
assign action ignore for ignore_all to 17847
assign action ignore for ignore_all to 17850
assign action ignore for ignore_all to 17853
assign action ignore for ignore_all to 17854
assign action ignore for ignore_all to 17860
assign action ignore for ignore_all to 17861
assign action ignore for ignore_all to 17864
assign action ignore for ignore_all to 17865
assign action ignore for ignore_all to 17873
assign action ignore for ignore_all to 17876
assign action ignore for ignore_all to 17885
assign action ignore for ignore_all to 17886
assign action ignore for ignore_all to 17897
assign action ignore for ignore_all to 17900
assign action ignore for ignore_all to 17906
assign action ignore for ignore_all to 17913
assign action ignore for ignore_all to 17914
assign action ignore for ignore_all to 17915
assign action ignore for ignore_all to 17918
assign action ignore for ignore_all to 17919
assign action ignore for ignore_all to 17926
assign action ignore for ignore_all to 17942
assign action ignore for ignore_all to 17943
assign action ignore for ignore_all to 17944
assign action ignore for ignore_all to 17945
assign action ignore for ignore_all to 17946
assign action ignore for ignore_all to 17947
assign action ignore for ignore_all to 17948
assign action ignore for ignore_all to 17949
assign action ignore for ignore_all to 17950
assign action ignore for ignore_all to 17951
assign action ignore for ignore_all to 17961
assign action ignore for ignore_all to 17962
assign action ignore for ignore_all to 17964
assign action ignore for ignore_all to 17965
assign action ignore for ignore_all to 17970
assign action ignore for ignore_all to 17971
assign action ignore for ignore_all to 17972
assign action ignore for ignore_all to 17978
assign action ignore for ignore_all to 17982
assign action ignore for ignore_all to 17983
assign action ignore for ignore_all to 17986
assign action ignore for ignore_all to 17988
assign action ignore for ignore_all to 17989
assign action ignore for ignore_all to 17990
assign action ignore for ignore_all to 17991
assign action ignore for ignore_all to 17998
assign action ignore for ignore_all to 17999
assign action ignore for ignore_all to 18000
assign action ignore for ignore_all to 18006
assign action ignore for ignore_all to 18007
assign action ignore for ignore_all to 18008
assign action ignore for ignore_all to 18009
assign action ignore for ignore_all to 18018
assign action ignore for ignore_all to 18020
assign action ignore for ignore_all to 18028
assign action ignore for ignore_all to 18029
assign action ignore for ignore_all to 18036
assign action ignore for ignore_all to 18037
assign action ignore for ignore_all to 18038
assign action ignore for ignore_all to 18049
assign action ignore for ignore_all to 18050
assign action ignore for ignore_all to 18051
assign action ignore for ignore_all to 18052
assign action ignore for ignore_all to 18053
assign action ignore for ignore_all to 18058
assign action ignore for ignore_all to 18061
assign action ignore for ignore_all to 18062
assign action ignore for ignore_all to 18063
assign action ignore for ignore_all to 18067
assign action ignore for ignore_all to 18069
assign action ignore for ignore_all to 18070
assign action ignore for ignore_all to 18071
assign action ignore for ignore_all to 18077
assign action ignore for ignore_all to 18078
assign action ignore for ignore_all to 18079
assign action ignore for ignore_all to 18080
assign action ignore for ignore_all to 18084
assign action ignore for ignore_all to 18099
assign action ignore for ignore_all to 18100
assign action ignore for ignore_all to 18104
assign action ignore for ignore_all to 18105
assign action ignore for ignore_all to 18108
assign action ignore for ignore_all to 18109
assign action ignore for ignore_all to 18111
assign action ignore for ignore_all to 18112
assign action ignore for ignore_all to 18113
assign action ignore for ignore_all to 18116
assign action ignore for ignore_all to 18119
assign action ignore for ignore_all to 18120
assign action ignore for ignore_all to 18122
assign action ignore for ignore_all to 18129
assign action ignore for ignore_all to 18132
assign action ignore for ignore_all to 18145
assign action ignore for ignore_all to 18151
assign action ignore for ignore_all to 18153
assign action ignore for ignore_all to 18156
assign action ignore for ignore_all to 18165
assign action ignore for ignore_all to 18167
assign action ignore for ignore_all to 18170
assign action ignore for ignore_all to 18172
assign action ignore for ignore_all to 18176
assign action ignore for ignore_all to 18177
assign action ignore for ignore_all to 18540
assign action ignore for ignore_all to 18543
assign action ignore for ignore_all to 20001
assign action ignore for ignore_all to 100701
assign action ignore for ignore_all to 101801
assign action ignore for ignore_all to 102501
assign action ignore for ignore_all to 102601
assign action ignore for ignore_all to 102701
assign action ignore for ignore_all to 103401
assign action ignore for ignore_all to 103601
assign action ignore for ignore_all to 104401
assign action ignore for ignore_all to 104501
assign action ignore for ignore_all to 104601
assign action ignore for ignore_all to 104701
assign action ignore for ignore_all to 105201
assign action ignore for ignore_all to 300601
assign action ignore for ignore_all to 304201
assign action ignore for ignore_all to 304301
assign action ignore for ignore_all to 304501
assign action ignore for ignore_all to 304801
assign action ignore for ignore_all to 305401
assign action ignore for ignore_all to 402201
assign action ignore for ignore_all to 403401
assign action ignore for ignore_all to 403501
assign action ignore for ignore_all to 403601
assign action ignore for ignore_all to 403701
assign action ignore for ignore_all to 403801
assign action ignore for ignore_all to 403901
assign action ignore for ignore_all to 404101
assign action ignore for ignore_all to 405801
assign action ignore for ignore_all to 408401
assign action ignore for ignore_all to 408501
assign action ignore for ignore_all to 602801
assign action ignore for ignore_all to 602901
assign action ignore for ignore_all to 603001
assign action ignore for ignore_all to 603801
assign action ignore for ignore_all to 604101
assign action ignore for ignore_all to 604501
assign action ignore for ignore_all to 604601
assign action ignore for ignore_all to 604701
assign action ignore for ignore_all to 604801
assign action ignore for ignore_all to 604901
assign action ignore for ignore_all to 605001
assign action ignore for ignore_all to 605101
assign action ignore for ignore_all to 605201
assign action ignore for ignore_all to 605301
assign action ignore for ignore_all to 605401
assign action ignore for ignore_all to 605501
assign action ignore for ignore_all to 607801
go
assign action ignore for ignore_all to 7747
go
assign action ignore for ignore_all to 208
go
assign action ignore for ignore_all to 207
go


Finally alter the connection to use the new error class using alter connection command on Replication server

Replication Server Thread Flow




Friday 15 January 2010

Sybase Dump verification

TAKEN DUMP
1> load database pm from '/OracleDumps/opctlsy2/pm.verific.dmp' with headeronly
2>
Backup Server session id is: 14. Use this value when executing the 'sp_volchanged' system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 6.28.1.1: Dumpfile name 'pm100050E6BD ' section number 1 mounted on disk file '/OracleDumps/opctlsy2/pm.verific.dmp'
This is a database dump of database ID 4, name 'pm', from Jan 5 2010 4:24PM. ASE version: Adaptive Server Enterprise/15.0.2/EBF 14328/P/Sun_svr4/OS 5.8/ase1502/2486/64-bit/FBO/Thu May 24 12:. Backup Server version: Backup Server/15.0.2/Sun_svr4/OS 5.8/ase1502/2902/32-bit/OPT/Thu May 24 08:04:12 2007. Database page size is 2048.
Database contains 15360 pages; checkpoint RID=(Rid pageid = 0x7e0; row num = 0x2); next object ID=1801054421; sort order ID=50, status=0; charset ID=1.
Database log version=7; database upgrade version=35.
segmap: 0x00000007 lstart=0 vstart=[vpgdevno=8 vpvpn=0] lsize=5120 unrsvd=3546
segmap: 0x00000007 lstart=5120 vstart=[vpgdevno=23 vpvpn=0] lsize=10240 unrsvd=10193
1> load database pm from '/OracleDumps/opctlsy2/pm.verific.dmp' with listonly
2>
Backup Server session id is: 16. Use this value when executing the 'sp_volchanged' system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 4.34.1.1: Device '/OracleDumps/opctlsy2/pm.verific.dmp':
Volume name:' '
Backup Server: 4.36.1.1: Device '/OracleDumps/opctlsy2/pm.verific.dmp':
File name: 'pm100050E6BD '
Create date & time: Tuesday, Jan 5, 2010, 16:24:29
Expiration date & time: Tuesday, Jan 5, 2010, 00:00:00
Database name: 'pm '
Backup Server: 6.30.1.3: Device /OracleDumps/opctlsy2/pm.verific.dmp: Volume cataloguing complete.
1> load database pm from '/OracleDumps/opctlsy2/pm.verific.dmp' with listonly=full
2>
Backup Server session id is: 18. Use this value when executing the 'sp_volchanged' system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 4.35.1.1: Device '/OracleDumps/opctlsy2/pm.verific.dmp':
Label name: 'VOL1'
Volume id: ' '
Access code: ' '
Reserved: ' '
Compression level: '0'
Owner id: ' '
Reserved: ' '
Labeling version: 7
Backup Server: 4.37.1.1: Device '/OracleDumps/opctlsy2/pm.verific.dmp':
Label id: 'HDR1'
File name: 'pm100050E6BD '
Stripe count: 1
Device typecount: 1
Archive volume number: 1
Stripe position: 0
Generation number: 0001
Generation version: 00
Backup Server: 4.148.1.1:
Create date & time: Tuesday, Jan 5, 2010, 16:24:29
Expiration date & time: Tuesday, Jan 5, 2010, 00:00:00
Access code: ' '
File block count: 0
Sybase id string: 'Sybase '
Reserved: ' '
Backup Server: 4.174.1.1: Device '/OracleDumps/opctlsy2/pm.verific.dmp':
Label id: 'HDR2'
Record format: 'F'
Max. bytes/block: 65536
Record length: 02048
Backup format version: 03
Reserved: ' B'
Database name: 'pm '
Buffer offset length: 00
Async. database I/Os: '000000002'
Max. database I/O size: '0000128'
Number of I/O Buffers: '03'
database page size in KiloBytes: '0000002'
Reserved: ' '
Backup Server: 4.37.1.1: Device '/OracleDumps/opctlsy2/pm.verific.dmp':
Label id: 'EOF1'
File name: 'pm100050E6BD '
Stripe count: 1
Device typecount: 1
Archive volume number: 1
Stripe position: 0
Generation number: 0001
Generation version: 00
Backup Server: 4.148.1.1:
Create date & time: Tuesday, Jan 5, 2010, 16:24:29
Expiration date & time: Tuesday, Jan 5, 2010, 00:00:00
Access code: ' '
File block count: 1483
Sybase id string: 'Sybase '
Reserved: ' '
Backup Server: 4.174.1.1: Device '/OracleDumps/opctlsy2/pm.verific.dmp':
Label id: 'EOF2'
Record format: 'F'
Max. bytes/block: 65536
Record length: 02048
Backup format version: 03
Reserved: ' B'
Database name: 'pm '
Buffer offset length: 00
Async. database I/Os: '000000002'
Max. database I/O size: '0000128'
Number of I/O Buffers: '03'
database page size in KiloBytes: '0000002'
Reserved: ' '
Backup Server: 4.154.1.1: Device '/OracleDumps/opctlsy2/pm.verific.dmp':
Label id: 'EOF3'
Total data stored on the volume: 2966 KiloBytes
Backup Server: 6.30.1.3: Device /OracleDumps/opctlsy2/pm.verific.dmp: Volume cataloguing complete.
CORRUPTED THE DUMP ;)
1> load database pm from '/OracleDumps/opctlsy2/pm.verific.dmp' with headeronly
2>
Backup Server session id is: 21. Use this value when executing the 'sp_volchanged' system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 4.12.2.1: Label validation error: HDR1 label not found.
Backup Server: 6.31.2.4: Volume rejected.
Backup Server: 1.14.2.2: Unrecoverable I/O or volume error. This DUMP or LOAD session must exit.
Backup Server: 6.32.2.3: /OracleDumps/opctlsy2/pm.verific.dmp: volume not valid or not requested (server: , session id: 21.)
Backup Server: 1.14.2.4: Unrecoverable I/O or volume error. This DUMP or LOAD session must exit.
Msg 8009, Level 16, State 1:
Server 'GALLARDO', Line 1:
Error encountered by Backup Server. Please refer to Backup Server messages for details.
1> load database pm from '/OracleDumps/opctlsy2/pm.verific.dmp' with listonly
2>
Backup Server session id is: 23. Use this value when executing the 'sp_volchanged' system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 4.12.2.1: Label validation error: HDR1 label not found.
Backup Server: 6.31.2.4: Volume rejected.
Backup Server: 6.32.2.3: /OracleDumps/opctlsy2/pm.verific.dmp: volume not valid or not requested (server: , session id: 23.)
Backup Server: 1.14.2.4: Unrecoverable I/O or volume error. This DUMP or LOAD session must exit.
1> load database pm from '/OracleDumps/opctlsy2/pm.verific.dmp' with listonly = full
2>
Backup Server session id is: 25. Use this value when executing the 'sp_volchanged' system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 4.12.2.1: Label validation error: HDR1 label not found.
Backup Server: 6.31.2.4: Volume rejected.
Backup Server: 6.32.2.3: /OracleDumps/opctlsy2/pm.verific.dmp: volume not valid or not requested (server: , session id: 25.)
Backup Server: 1.14.2.4: Unrecoverable I/O or volume error. This DUMP or LOAD session must exit.

Mount Unmount databases in Sybase

1> unmount database mydb to '/OracleDumps/opctlsy2/sybase/mydb.mnfst'
2>
00:00000:00011:2008/07/29 17:02:43.76 kernel Deactivating virtual device 1, '/OracleDumps/opctlsy2/sybase/data/mdev.dat'.
00:00000:00011:2008/07/29 17:02:43.76 kernel Deactivating virtual device 3, '/OracleDumps/opctlsy2/sybase/data/mdev1.dat'.
1> 1>
1>
Password:
Msg 2401, Level 11, State 2:
Character set conversion is not available between client character set 'iso_1' and server character set 'ascii_8'.
No conversions will be done.

1> sp_helpdb
2>
name db_size owner dbid created status
-------------- ------------- ----- ----- ------------ --------------------------------------------------------------------
master 99.5 MB sa 1 Jan 01, 1900 mixed log and data
model 3.0 MB sa 3 Jan 01, 1900 mixed log and data
sybsystemdb 3.0 MB sa 31513 Jul 16, 2008 mixed log and data
sybsystemprocs 170.0 MB sa 31514 Feb 19, 2008 trunc log on chkpt, mixed log and data
tempdb 4.0 MB sa 2 Jul 29, 2008 select into/bulkcopy/pllsort, trunc log on chkpt, mixed log and data
(1 row affected)
(return status = 0)
1> mount database all from '/OracleDumps/opctlsy2/sybase/mydb.mnfst'
2>
00:00000:00012:2008/07/29 17:04:17.36 kernel Initializing virtual device 1, '/OracleDumps/opctlsy2/sybase/data/mdev.dat' with dsync 'on'.
00:00000:00012:2008/07/29 17:04:17.36 kernel Virtual device 1 started using asynchronous i/o.
00:00000:00012:2008/07/29 17:04:17.36 kernel Initializing virtual device 3, '/OracleDumps/opctlsy2/sybase/data/mdev1.dat' with dsync 'on'.
00:00000:00012:2008/07/29 17:04:17.36 kernel Virtual device 3 started using asynchronous i/o.
00:00000:00012:2008/07/29 17:04:17.37 server Log contains all committed transactions until 2008/07/29 16:55:49.67 for database mydb.
Started estimating recovery log boundaries for database 'mydb'.
Database 'mydb', checkpoint=(2567, 13), first=(2567, 13), last=(2567, 13).
Completed estimating recovery log boundaries for database 'mydb'.
Started ANALYSIS pass for database 'mydb'.
Completed ANALYSIS pass for database 'mydb'.
Started REDO pass for database 'mydb'. The total number of log records to process is 1.
Completed REDO pass for database 'mydb'.
Recovery of database 'mydb' will undo incomplete nested top actions.
Started recovery checkpoint for database 'mydb'.
Completed recovery checkpoint for database 'mydb'.
Started filling free space info for database 'mydb'.
Completed filling free space info for database 'mydb'.
Started cleaning up the default data cache for database 'mydb'.
Completed cleaning up the default data cache for database 'mydb'.
MOUNT DATABASE: Completed recovery of mounted database 'mydb'.
1> sp_helpdb
2>
name db_size owner dbid created status
-------------- ------------- ----- ----- ------------ --------------------------------------------------------------------
master 99.5 MB sa 1 Jan 01, 1900 mixed log and data
model 3.0 MB sa 3 Jan 01, 1900 mixed log and data
mydb 10.0 MB sa 4 Jul 29, 2008 offline
sybsystemdb 3.0 MB sa 31513 Jul 16, 2008 mixed log and data
sybsystemprocs 170.0 MB sa 31514 Feb 19, 2008 trunc log on chkpt, mixed log and data
tempdb 4.0 MB sa 2 Jul 29, 2008 select into/bulkcopy/pllsort, trunc log on chkpt, mixed log and data
(1 row affected)
(return status = 0)
1>

Fixing Corrupt index on system table

1> sp_logiosize 'default'
2>
Msg 644, Level 21, State 5:
Procedure 'sp_logiosize', Line 313:
Index row entry for data row id (817, 15) is missing from index page 1009 of index id 2 of table 'sysattributes' in database 'sag'. Xactid is (10215,24). Drop and re-create the index.
1> sp_dboption sag, 'single', true
2>
Database option 'single user' turned ON for database 'sag'.
Running CHECKPOINT on database 'sag' for option 'single user' to take effect.
(return status = 0)
1>
1> use sag
2>
1> checkpoint
1> use sag
2>
1> sp_fixindex sag,sysattributes,2
2>
There are 22.000000 rows in 1 pages for object 'sysattributes'.
Non-clustered index successfully restored for object 'sysattributes' in 'sag' database.
DBCC execution completed. If DBCC printed error messages, contact a user with System Administrator (SA) role.
(return status = 0)

1> sp_logiosize 'default'
2>
The transaction log for database 'sag' will use I/O size of 4 Kbytes.
(return status = 0)
1>

Dropping a Corrupt Table from Sybase

1> declare @obj int
2> select @obj = id from sysobjects where name = 'dddd'
3> delete syscolumns where id = @obj
4> delete sysindexes where id = @obj
5> delete sysobjects where id in (select constrid from sysconstraints where tableid = @obj)
6> delete sysdepends where depid = @obj
7> delete syskeys where id = @obj
8> delete syskeys where depid = @obj
9> delete sysprotects where id = @obj
10> delete sysconstraints where tableid = @obj
11> delete sysreferences where tableid = @obj
12> delete sysattributes where object = @obj
delete syspartitions where id = @obj
13> 14> delete sysstatistics where id = @obj
15> delete systabstats where id = @obj
16> delete syscomments where id in (select id from sysobjects where deltrig = @obj)
17> delete syscomments where id in (select id from sysobjects where instrig = @obj)
18> delete syscomments where id in (select id from sysobjects where updtrig = @obj)
19> delete sysprocedures where id in (select id from sysobjects where deltrig = @obj)
20> delete sysprocedures where id in (select id from sysobjects where instrig = @obj)
21> delete sysobjects where deltrig = @obj
22> delete sysobjects where instrig = @obj
23> delete sysobjects where updtrig = @obj
24> delete sysobjects where id = @obj
25> delete sysstatistics where id = @obj
26> delete systabstats where id = @obj
delete syspartitionkeys where id = @obj
27>
28>
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(12 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
(0 rows affected)
1> commit tran
2>


Finallly dont forget to destroy the object descriptor from the metadata cache :

1> select object_id('dddd')
2>
-----------
828526954
(1 row affected)
1> sp_monitorconfig 'open objects'
2>
Usage information at date and time: Apr 21 2009 9:54AM.
Name Num_free Num_active Pct_act Max_Used Reuse_cnt
------------------------- ----------- ----------- ------- ----------- -----------
number of open objects 948 52 5.20 52 0
(1 row affected)
(return status = 0)
1> dbcc cacheremove(5,828526954)
2>
1> sp_monitorconfig 'open objects'
2>
Usage information at date and time: Apr 21 2009 9:54AM.
Name Num_free Num_active Pct_act Max_Used Reuse_cnt
------------------------- ----------- ----------- ------- ----------- -----------
number of open objects 949 51 5.10 52 0
(1 row affected)
(return status = 0)
1> select object_id('dddd')
2>
-----------
NULL
(1 row affected)
1>

Delete Trigger example in Sybase

1> sp_helptext empage_delete_restrict
2>
# Lines of Text
---------------
1
(1 row affected)
text
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
create trigger empage_delete_restrict on empage
for delete
as
begin
print 'Delete of records not allowed in this table'
rollback transaction
end

(1 row affected)
(return status = 0)
1> select * from empage
2>
empid empage
----------- -----------
654 23
76 45
6 43
100 29
65 60
(5 rows affected)
1> delete from empage where empid = 100
2>
Delete of records not allowed in this table
1> select * from empage
2>
empid empage
----------- -----------
654 23
76 45
6 43
100 29
65 60
(5 rows affected)
1>

Update Trigger Example Sybase

create trigger empdata_to_upd_empage on empdata
for update
as
if update (empid)
begin
update empage set empage.empid = inserted.empid
from
inserted,empage,deleted
where deleted.empid=empage.empid
end

(1 row affected)
(return status = 0)
1> select * from empdata
2>
empname empid
-------------------- -----------
k 654
m 76
o 6
t 98
w 65
(5 rows affected)
1> select * from empage
2>
empid empage
----------- -----------
654 23
76 45
6 43
98 29
65 60
(5 rows affected)

1> update empdata set empid=100 where empname='t'
2>
(1 row affected)
1> select * from empdata
2>
empname empid
-------------------- -----------
k 654
m 76
o 6
t 100
w 65
(5 rows affected)
1> select * from empage
2>
empid empage
----------- -----------
654 23
76 45
6 43
100 29
65 60
(5 rows affected)
1>

Sybase ASE 15.0.2 Job Scheduler Setup

JOB SCHEDULER IN SYBASE


Step 1 Create a raw device for sybmgmtdb database


/opt/VRTSvxfs/sbin/qiomkfile -s 75m /OracleDumps/opctlsy2/sybmgmtdev
aloncvc1004:opctlsy2 >/opt/VRTSvxfs/sbin/qiomkfile -s 75m /OracleDumps/opctlsy2/sybmgmtdev

Step 2 Initialise unix raw device to create allocation units for dataserver

1> disk init
2> name=sybmgmtdev,
3> physname='/OracleDumps/opctlsy2/sybmgmtdev',
4> size='75M'


Step 3 Run the installjsdb script in $SYBASE/$SYBASE-ASE/scripts which will create the database sybmgmtdb on the device sybmgmtdev

aloncvc1004:opctlsy2 >isql -Usa -SGALLARDO -iinstalljsdb -oinstalljsdb.out
Password:*****

Starting the setup of sybmgmtdb.
Using device sybmgmtdev for the sybmgmtdb database.
CREATE DATABASE: allocating 33280 logical pages (65.0 megabytes) on disk
'sybmgmtdev'.
CREATE DATABASE: allocating 5120 logical pages (10.0 megabytes) on disk
'sybmgmtdev'.
Caution: You have set up this database to include space on disk 55 for both
data and the transaction log. This can make recovery impossible if that disk
fails.
Database 'sybmgmtdb' is now online.
Database option 'trunc log on chkpt' turned ON for database 'sybmgmtdb'.
Running CHECKPOINT on database 'sybmgmtdb' for option 'trunc log on chkpt' to
take effect.
(return status = 0)
Database option 'select into/bulkcopy/pllsort' turned ON for database
'sybmgmtdb'.
Running CHECKPOINT on database 'sybmgmtdb' for option 'select
into/bulkcopy/pllsort' to take effect.
(return status = 0)
Executing checkpoint in sybmgmtdb
Database log is 5120 pages, 30% log free is at 1536 pages, the last chance
threshold is at 376 pages.
installing sp_js_logthreshold at 1536 pages.
Adding threshold for segment 'logsegment' at '1536' pages.
DBCC execution completed. If DBCC printed error messages, contact a user with
System Administrator (SA) role.
(return status = 0)
Created js_jobs.
Created js_commands.
Created js_schedules.
Created js_scheduledjobs.
Created js_seqsql.
Created js_callouts.
Created js_history.
Created js_output.
Created js_keys.
Created js_templates.
Created js_xml.
Created js_daynames.

Step 4 Add the below entry into interfaces file, note that port you choose should be avaialable and not in use


GALLARDO_JSAGENT
master tcp ether opctlsy2 5030
query tcp ether opctlsy2 5030

Step 5 Add the server into sysserver table

1> sp_addserver SYB_JSAGENT,null,GALLARDO_JSAGENT
2>
Adding server 'SYB_JSAGENT', physical name 'GALLARDO_JSAGENT'
Server added.
(return status = 0)

Step 6 Add the local server as loopback server onto sysservers as this will be referred by JS Scheduler and JS Agent


1> sp_addserver loopback,ASEnterprise,GALLARDO
2>
Adding server 'loopback', physical name 'GALLARDO'
Server added.
(return status = 0)

1> sp_helpserver
2>
name network_name class status id cost
----------- ---------------- ------------ ------------------------------------------------------------------------ -- ----
FERRARI FERRARI ASEnterprise no timeouts, no net password encryption, writable , rpc security model A 4 1000
GALLARDO GALLARDO ASEnterprise 0 0
GALLAREP GALLAREP sql_server no timeouts, no net password encryption, writable , rpc security model A 5 1000
GALLARIBO GALLARIBO ASEnterprise no timeouts, no net password encryption, writable , rpc security model A 6 1000
SYB_BACKUP GALLARDO_BS ASEnterprise timeouts, no net password encryption, writable , rpc security model A 1 0
SYB_JSAGENT GALLARDO_JSAGENT ASEnterprise no timeouts, no net password encryption, writable , rpc security model A 7 1000
SYB_JSTASK GALLARDO ASEnterprise timeouts, no net password encryption, writable , rpc security model A 8 1000
local GALLARDO ASEnterprise no timeouts, no net password encryption, writable , rpc security model A 3 1000
loopback GALLARDO ASEnterprise no timeouts, no net password encryption, writable , rpc security model A 2 1000
(return status = 0)



Step 7 Set up Sybase configuration parameters to start Job Scheduler

1> sp_configure 'job'
2>
Msg 17411, Level 16, State 1:
Server 'GALLARDO', Procedure 'sp_configure', Line 278:
Configuration option is not unique.

Parameter Name Default Memory Used Config Value Run Value Unit Type
------------------------------ ----------- ----------- ------------ ------------ -------------------- ----------
enable job scheduler 0 0 0 0 switch dynamic
job scheduler interval 1 0 1 1 seconds dynamic
job scheduler tasks 32 0 32 32 number dynamic
maximum job output 32768 0 32768 32768 bytes dynamic

(1 row affected)
(return status = 1)
1> sp_configure 'enable job scheduler', 1
2>
Parameter Name Default Memory Used Config Value Run Value Unit Type
------------------------------ ----------- ----------- ------------ ------------ -------------------- ----------
enable job scheduler 0 0 1 1 switch dynamic

(1 row affected)
Configuration option changed. ASE need not be rebooted since the option is dynamic.
Changing the value of 'enable job scheduler' to '1' increases the amount of memory ASE uses by 18694 K.
(return status = 0)
1>


Step 8 Start up Sybase Job Scheduler

Even a server recycle will start the JS with following message in sybase log

00:00000:00013:2009/08/03 14:39:18.94 kernel Initializing Job Scheduler Task
00:00000:00013:2009/08/03 14:39:19.01 kernel Installed Job Scheduler sequencer code version 0.27 - 27 tokens
00:00000:00013:2009/08/03 14:39:19.12 kernel Job Scheduler Task started with a clean 'js_history' table
00:00000:00013:2009/08/03 14:39:20.20 kernel Job Scheduler Task state set to running, startcount 1.
00:00000:00013:2009/08/03 14:39:21.20 kernel Job Scheduler Task connected with Agent on port 5030

OR


1> sp_js_wakeup 'start_js', 1
2>
(1 row affected)
(return status = 1)
1>

Step 9 Add a login with js_admin_role, js_user_role, js_client_role which you will use to kick and create jobs

1> sp_addlogin job_scheduler, job_scheduler, sybmgmtdb,NULL,'JS ADMIN ROLE'
2>
Password correctly set.
Account unlocked.
New login created.
(return status = 0)
1> use sybmgmtdb
2>
1> sp_adduser job_scheduler,job_scheduler
2>
New user added.
(return status = 0)
1>

1> sp_role 'grant',js_admin_role,job_scheduler
2>
Authorization updated.
(return status = 0)
1> sp_role 'grant',js_user_role,job_scheduler
2>
Authorization updated.
(return status = 0)
1>


Step 10 Need to register the login as a remote login to all the target servers where you need to run jobs out of JS


1> sp_addexternlogin FERRARI,job_scheduler,job_scheduler,job_scheduler
2>
User 'job_scheduler' will be known as 'job_scheduler' in remote server 'FERRARI'.
(return status = 0)
1>

For Local server add the following

1> sp_addexternlogin loopback,job_scheduler,job_scheduler,job_scheduler
2>
User 'job_scheduler' will be known as 'job_scheduler' in remote server 'loopback'.
(return status = 0)
1>


Step 11 If you use Sybase Central you can install the forllowing sps and templates using which you can create jobs for dump, reorg, statistics, rebuild etc


TEMPLATES

aloncvc1004:opctlsy2 >pwd
/OracleDumps/opctlsy2/sybase/ASE-15_0/jobscheduler/Templates/sprocs
aloncvc1004:opctlsy2 >


aloncvc1004:opctlsy2 >./installTemplateProcs 'GALLARDO' 'sa' '*****'
Creating generic stored procedures used by Sybase Job Scheduler Template jobs
Generic stored procedure used by Sybase Job Scheduler Template jobs
sp_jst_check_reorg_space has been created
Generic stored procedure used by Sybase Job Scheduler Template jobs
sp_jst_database_names has been created
Generic stored procedure used by Sybase Job Scheduler Template jobs
sp_jst_get_index_names has been created
Generic stored procedure used by Sybase Job Scheduler Template jobs
sp_jst_get_datachange has been created
Generic stored procedure used by Sybase Job Scheduler Template jobs
sp_jst_get_datestr dropped
sp_jst_get_datestr has been created
Generic stored procedure used by Sybase Job Scheduler Template
jobs
sp_jst_get_freespace has been created

TEMPLATE PROCS

aloncvc1004:opctlsy2 >./installTemplateProcs 'GALLARDO' 'sa' '*****'
Creating generic stored procedures used by Sybase Job Scheduler Template jobs
Generic stored procedure used by Sybase Job Scheduler Template jobs
sp_jst_check_reorg_space has been created
Generic stored procedure used by Sybase Job Scheduler Template jobs
sp_jst_database_names has been created
Generic stored procedure used by Sybase Job Scheduler Template jobs
sp_jst_get_index_names has been created
Generic stored procedure used by Sybase Job Scheduler Template jobs
sp_jst_get_datachange has been created
Generic stored procedure used by Sybase Job Scheduler Template jobs
sp_jst_get_datestr dropped
sp_jst_get_datestr has been created
Generic stored procedure used by Sybase Job Scheduler Template
jobs
sp_jst_get_freespace has been created
Creating support Stored Procedure for Sybase Reconfigure Metadata Cache Template
created procedure sp_jst_get_mdcache_type
sp_jst_get_spaceused has been created
Creating Support Stored Procedure for Sybase Reconfigure Metadata Cache Template
created procedure sp_jst_reconf_mdcache_type
Generic stored procedure used by Sybase Job Scheduler Template jobs
sp_jst_verion_num has been created
Generic stored procedure used by Sybase Job Scheduler Template jobs
sp_jst_purge_alphachars has been created
sp_jst_valid_ase_version has been created
Creating job-specific stored procedures used by Sybase Job Scheduler Templates
Creating Sybase Delete Statistics Template stored procedures
sp_jst_delete_stats has been created
sp_jst_dump_db_to_disk has been created
Creating Stored Procedures for Sybase Backup Database to Disk Template
sp_jst_dump_dbs_to_disk has been created
Creating Sybase Back-up Log Template stored procedures
Creating Stored Procedures for Sybase Dump Logs Template
sp_jst_dump_tran_log_to_disk has been created
sp_jst_chk_row_threshold has been created
sp_jst_chk_time_threshold has been created


Step 12 Go ahead and create jobs and schedule them :)

Create job

declare @jobcmd varchar(255)
select @jobcmd='jcmd=YOUR COMMAND OR PROC,server=GALLARDO'
exec sp_sjobcreate 'sjname=3_job', @jobcmd

Attach a schedule

1> sp_sjobmodify @name='first_job', @option='sname=mysched'
2>
(return status = 0)
1> sp_sjobmodify 'sname=mysched' , @option='repeats=1day, starttime=03:00pm'
2>
(return status = 0)
1>

sp_sjobhelp


sjob_id: 6 name: 'first_job'
owner : sa
created : Aug 4 2009 2:15PM
state : enabled
job name : 7 - 'job_7'
schedule name : 7 - 'mysched'
server : GALLARDO
-- job --------:
description :
owner : sa
created : Aug 4 2009 2:15PM
-- schedule ---:
description :
owner : sa
created : Aug 4 2009 2:15PM
repeating : every day
starttime : 15:00
startdate : 04 Aug 2009


(1 row affected)
(return status = 0)
1> sp_sjobcmd 'first_job', 'list'
2>
job_id job_name jcmd_seqno jcmd_text
7 job_7 0 use master
7 job_7 1
7 job_7 2 go
7 job_7 3 exec sp_myproc
7 job_7 4
7 job_7 5 go



Default log location is the server log location :

GALLARDO_JSAGENT.log


Monday 11 January 2010

Parameter Passing in proxy tables designed to store sp output

A. Pre requisites: Need to have cis properties enabled, loopback server added in sysservers, and setting up an externlogin to loopback from your local
B. Create existing table :
create existing table procinfo ( procname varchar(20), owner varchar(10), tranmode varchar(20) , _procname varchar(767) null )
external procedure at "loopback.sybsystemprocs.dbo.sp_procxmode"
Here the last column in actually the parameter to the procedure sp_procxmode with same name but distinguished by an _ ( underscore )
You can use this in the table select where clause as shown later:

C. Now start selecting ;)

1> select * from procinfo
2>
procname owner tranmode _procname
-------------------- ---------- -------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
sp_activeroles dbo Any Mode NULL
sp_add_qpgroup dbo Any Mode NULL
sp_add_resource_limi dbo Any Mode NULL
This will take the _procname as NULL as no where clause passed and thus give a listing of sp_procxmode output as stored in procinfo table


1> select * from procinfo where procname='sp_listsuspect_db'
2>
procname owner tranmode _procname
-------------------- ---------- -------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
sp_listsuspect_db dbo Any Mode NULL
This will pass the parameter @procname = 'sp_listsuspect_db' as this has been mentioned in where clause and return only for the procedure.
We can use this feature to capture results of stored procedure in tables by providing different parameters…
Cheers,
Ajit

Friday 8 January 2010

Useful ASE stored procedures to check various constraints

You can use the below set of stored procedures to find the same

Basic Level sp_helpindex tablename
Details
sp_fkeys tablename Gives details of foreign keys on the table having primary keys
sp_pkeys tablename Give details of the primary keys
sp_helpcontraint tablename, detail Gives details of all contraints on the table
sp_helpkey tablename Gives details of the keys associated with the table

Additional Procedure cache requirements for cross platform dump and load

Below Procedure cache sizing formula, we can keep this handy with us Approximate calculation for memory needed in procedure cache:
2KB(context structure) -- Required for loading databases ( also in Cross Platform dump load )

+ 16KB(translation dictionary for system tables) ( Suppose we load into a different byte storage architecture in Cross Platform then system tables translational dictionary will be built for conversion)
+ 146KB(work memory to build translation dictionary for system tables and user tables) ( This will be required to build up the translational dictionary for initiating Cross Platform Load )
+ ((# of user tables) * 20 bytes) ( Normal estimation for user tables )
+ ((# of indexes on user tables) * 8 bytes) ) ( Normal estimation for user table indexes )
+ ((# of columns on user tables which needs translation + # of columns in index keys on user tables which needs translation) * 12 bytes) ( Number of columns of tables or indexes which have to be translated )

Example : 10,000 user tables + 40,000 indexes + 400,000 columns = 164KB + 200KB + 320 KB + 4.8 MB = 5.5MB

Pagelinkage APL - Another way to check for fragmentation

SELECT name, first FROM sysindexes WHERE indid not in (0,1) AND id = object_id('PREVPOS')
Non clustered index.


The above gives you the frst page of the leaf level of the nci. Basically our aim is to see how much fragmentation is there in the index leaf level pages

dbcc pglinkage(4,808536,0,2,0,1)
We can view haphazard page chain which increases disk seek times, fragmentation
NCI highly fragmented


This will show you the links from one page to another, and you can observe if their are multiple jumps in between pages in different extets or the pages are organised in a sequential increasing manner.
A new index will have sequential pages, but as there will be more inserts, deletes on index keys, the index gets fragmented.

Storing a stored procedure output into a table

We can use proxy tables to store the output of a procedure into a table. This requires CIS to be enabled on your system


1> create existing table mytable ( LOGIN varchar(20), ALIASEDTO varchar(20),DATABASENAME varchar(20), ALIASUSER varchar(20) )
2> external procedure at "local.sybsystemprocs.dbo.sp_alias"
3>
1> select * from mytable
2>


This will execute the procedure and send you the result in table, which you can use in other queries.

Make sure to add a local server to the sysservers system table.

Tuning Backup Server dump and load operations

We can use following traces to give us a better picture about what goes on when a dump or load happens

Following traces are present as a part of backupserver binary:

BACKUP SERVER TRACES

Backup Server trace flag: 1 is on. This flag does the following: Prints blocksize used during a dump or a load.
Backup Server trace flag: 2 is on. This flag does the following: Prints i/o optimization parameters used during a dump or a load.
Backup Server trace flag: 3 is on. This flag does the following: Allow dumping to the /dev/null device.
Backup Server trace flag: 4 is on. This flag does the following: Prints allocation percentage of the allocation units during dump.
Backup Server trace flag: 5 is on. This flag does the following: Prints the database pagesize used during a dump or a load.

Commands to set them on/off

Using 0 will display the traces set

SYB_BACKUP...qatraceon 0,1,2,3,4,5
SYB_BACKUP...qatraceoff 1,2,3,4,5

Findings:

Increasing stripes upto a certain amount can minimise number of io made or time taken during a dump or load by sybmultbuf to read /write on dumps/devices.
Increasing shared memory available to backup server via -m on backup run server can also help on performance tuning of dumps and loads.

There are few important terms in traces which give us an idea about the io sizes, number of zones used

Dbiosize the database io size to be used on the dump file during dumping a particular stripe
Iocount Total number of IO made for the dump or load session
Zonesize Not very clear but aids performance if the numzones are higher in number
Blocksize the block size to be used
Numzones the more the numzones , the better is performance ( ranges from 1 to 5 )



Dump Cases Considered under tracing for qatraceon 1,2 and 3 :

A.dumping into one stripe with shared memory 100MB

1> dump database sag to '/OracleDumps/opctlsy2/sag.dmp'

2> Backup Server session id is: 33. Use this value when executing the 'sp_volchanged' system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 4.173.1.1: The database pagesize is '2048' bytes.
Backup Server: 6.28.1.1: Dumpfile name 'sag1000609C09 ' section number 1 mounted on disk file '/OracleDumps/opctlsy2/sag.dmp'
Backup Server: 4.166.1.1: Using dbiosize of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp.
Backup Server: 4.165.1.1: Using iocount of 7 for device /OracleDumps/opctlsy2/sag.dmp.
Backup Server: 4.166.1.2: Using zonesize of 458752 bytes for device /OracleDumps/opctlsy2/sag.dmp.
Backup Server: 4.166.1.3: Using blocksize of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp.
Backup Server: 4.165.1.2: Using numzones of 2 for device /OracleDumps/opctlsy2/sag.dmp.
Backup Server: 4.155.1.1: Using maximum block size of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp.

Notice that the iocount is 7, dbiosize is 65536 bytes, numzones are 2

B. dumping into one stripe with shared memory double

1> dump database sag to '/OracleDumps/opctlsy2/sag.dmp'
2>
Backup Server session id is: 12. Use this value when executing the 'sp_volchanged' system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 6.28.1.1: Dumpfile name 'sag100060A4F5 ' section number 1 mounted on disk file '/OracleDumps/opctlsy2/sag.dmp'
Backup Server: 4.166.1.1: Using dbiosize of 262144 bytes for device /OracleDumps/opctlsy2/sag.dmp.
Backup Server: 4.165.1.1: Using iocount of 7 for device /OracleDumps/opctlsy2/sag.dmp.
Backup Server: 4.166.1.2: Using zonesize of 1835008 bytes for device /OracleDumps/opctlsy2/sag.dmp.
Backup Server: 4.166.1.3: Using blocksize of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp.
Backup Server: 4.165.1.2: Using numzones of 3 for device /OracleDumps/opctlsy2/sag.dmp.
Backup Server: 4.155.1.1: Using maximum block size of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp.
Adaptive Server cpu time: 0 ms. Adaptive Server elapsed time: 4030 ms.

Notice the iocount 7 but dbiosize 262144 bytes, numzones 3, time is 4030 ms

C.dumping on to 2 stripes

dump database sag to '/OracleDumps/opctlsy2/sag.dmp1' stripe on '/OracleDumps/opctlsy2/sag.dmp2'
Backup Server session id is: 33. Use this value when executing the 'sp_volchanged' system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 6.28.1.1: Dumpfile name 'sag100060A9C7 ' section number 1 mounted on disk file '/OracleDumps/opctlsy2/sag.dmp1'
Backup Server: 4.166.1.1: Using dbiosize of 524288 bytes for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.165.1.1: Using iocount of 3 for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.166.1.2: Using zonesize of 1572864 bytes for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.166.1.3: Using blocksize of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.165.1.2: Using numzones of 4 for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.155.1.1: Using maximum block size of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 6.28.1.1: Dumpfile name 'sag100060A9C7 ' section number 1 mounted on disk file '/OracleDumps/opctlsy2/sag.dmp2'
Backup Server: 4.166.1.1: Using dbiosize of 524288 bytes for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.165.1.1: Using iocount of 3 for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.166.1.2: Using zonesize of 1572864 bytes for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.166.1.3: Using blocksize of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.165.1.2: Using numzones of 4 for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.155.1.1: Using maximum block size of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp2.
Adaptive Server cpu time: 0 ms. Adaptive Server elapsed time: 3980 ms.

Notice iocount reduced to 6, numzones are 4, dbiosize is 524288, time taken 3980 ms - Performance better as less io, less time


D.dumping to 3 stripes

dump database sag to '/OracleDumps/opctlsy2/sag.dmp1' stripe on '/OracleDumps/opctlsy2/sag.dmp2' stripe on '/OracleDumps/opctlsy2/sag.dmp3'
Backup Server: 6.28.1.1: Dumpfile name 'sag100060A5E2 ' section number 1 mounted on disk file '/OracleDumps/opctlsy2/sag.dmp2'
Backup Server: 4.166.1.1: Using dbiosize of 524288 bytes for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.165.1.1: Using iocount of 2 for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.166.1.2: Using zonesize of 1048576 bytes for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.166.1.3: Using blocksize of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.165.1.2: Using numzones of 4 for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.155.1.1: Using maximum block size of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 6.28.1.1: Dumpfile name 'sag100060A5E2 ' section number 1 mounted on disk file '/OracleDumps/opctlsy2/sag.dmp1'
Backup Server: 4.166.1.1: Using dbiosize of 524288 bytes for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.165.1.1: Using iocount of 2 for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.166.1.2: Using zonesize of 1048576 bytes for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.166.1.3: Using blocksize of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.165.1.2: Using numzones of 4 for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.155.1.1: Using maximum block size of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 6.28.1.1: Dumpfile name 'sag100060A5E2 ' section number 1 mounted on disk file '/OracleDumps/opctlsy2/sag.dmp3'
Backup Server: 4.166.1.1: Using dbiosize of 524288 bytes for device /OracleDumps/opctlsy2/sag.dmp3.
Backup Server: 4.165.1.1: Using iocount of 2 for device /OracleDumps/opctlsy2/sag.dmp3.
Backup Server: 4.166.1.2: Using zonesize of 1048576 bytes for device /OracleDumps/opctlsy2/sag.dmp3.
Backup Server: 4.166.1.3: Using blocksize of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp3.
Backup Server: 4.165.1.2: Using numzones of 4 for device /OracleDumps/opctlsy2/sag.dmp3.
Backup Server: 4.155.1.1: Using maximum block size of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp3.
Adaptive Server cpu time: 100 ms. Adaptive Server elapsed time: 4026 ms.

Notice iocount total 6, dbiosize 524288 but zonesize has reduced per dump still it uses numzones as 4, time is 4026ms


E. dumping to 4 stripes

dump database sag to '/OracleDumps/opctlsy2/sag.dmp1' stripe on '/OracleDumps/opctlsy2/sag.dmp2' stripe on '/OracleDumps/opctlsy2/sag.dmp3' stripe on '/OracleDumps/opctlsy2/sag.dmp4'
Backup Server session id is: 26. Use this value when executing the 'sp_volchanged' system stored procedure after fulfilling any volume change request from the Backup Server.
Backup Server: 4.41.1.1: Creating new disk file /OracleDumps/opctlsy2/sag.dmp4.
Backup Server: 6.28.1.1: Dumpfile name 'sag100060A65F ' section number 1 mounted on disk file '/OracleDumps/opctlsy2/sag.dmp4'
Backup Server: 4.166.1.1: Using dbiosize of 1048576 bytes for device /OracleDumps/opctlsy2/sag.dmp4.
Backup Server: 4.165.1.1: Using iocount of 1 for device /OracleDumps/opctlsy2/sag.dmp4.
Backup Server: 4.166.1.2: Using zonesize of 1048576 bytes for device /OracleDumps/opctlsy2/sag.dmp4.
Backup Server: 4.166.1.3: Using blocksize of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp4.
Backup Server: 4.165.1.2: Using numzones of 4 for device /OracleDumps/opctlsy2/sag.dmp4.
Backup Server: 4.155.1.1: Using maximum block size of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp4.
Backup Server: 6.28.1.1: Dumpfile name 'sag100060A65F ' section number 1 mounted on disk file '/OracleDumps/opctlsy2/sag.dmp1'
Backup Server: 4.166.1.1: Using dbiosize of 1048576 bytes for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.165.1.1: Using iocount of 1 for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.166.1.2: Using zonesize of 1048576 bytes for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.166.1.3: Using blocksize of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.165.1.2: Using numzones of 4 for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 4.155.1.1: Using maximum block size of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp1.
Backup Server: 6.28.1.1: Dumpfile name 'sag100060A65F ' section number 1 mounted on disk file '/OracleDumps/opctlsy2/sag.dmp2'
Backup Server: 4.166.1.1: Using dbiosize of 1048576 bytes for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.165.1.1: Using iocount of 1 for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.166.1.2: Using zonesize of 1048576 bytes for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.166.1.3: Using blocksize of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.165.1.2: Using numzones of 4 for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 4.155.1.1: Using maximum block size of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp2.
Backup Server: 6.28.1.1: Dumpfile name 'sag100060A65F ' section number 1 mounted on disk file '/OracleDumps/opctlsy2/sag.dmp3'
Backup Server: 4.166.1.1: Using dbiosize of 1048576 bytes for device /OracleDumps/opctlsy2/sag.dmp3.
Backup Server: 4.165.1.1: Using iocount of 1 for device /OracleDumps/opctlsy2/sag.dmp3.
Backup Server: 4.166.1.2: Using zonesize of 1048576 bytes for device /OracleDumps/opctlsy2/sag.dmp3.
Backup Server: 4.166.1.3: Using blocksize of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp3.
Backup Server: 4.165.1.2: Using numzones of 4 for device /OracleDumps/opctlsy2/sag.dmp3.
Backup Server: 4.155.1.1: Using maximum block size of 65536 bytes for device /OracleDumps/opctlsy2/sag.dmp3.
Adaptive Server cpu time: 0 ms. Adaptive Server elapsed time: 3983 ms.

Notice the iocount as 4 now, dbiosize of 1048576 bytes, numzones as 4

Similarly we can tune the loads based on the traced optimisation parameters.