Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2
Tài liệu này dành cho phiên bản không được hỗ trợ của kèo tỷ số bóng đá euro hôm nay.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

25.4. kèo tỷ số bóng đá euro hôm nay

kèo tỷ số bóng đá euro hôm naycung cấp Các cơ sở để hỗ trợ kèo tỷ số bóng đá euro hôm nay động của máy chủ cơ sở dữ liệu. Điều này cho phép một tiện ích bên ngoài được gọi tại các điểm cụ thể Trong mã và do đó thực hiện kèo tỷ số bóng đá euro hôm nay. Hiện tại, cơ sở này chủ yếu được sử dụng để sử dụng bởi các nhà phát triển cơ sở dữ liệu, vì nó yêu cầu sự quen thuộc đáng kể với mã.

Một số điểm kèo tỷ số bóng đá euro hôm nay, thường được gọi là đầu dò, đã chèn vào mã nguồn. Theo mặc định, các đầu dò này là đã vô hiệu hóa và người dùng cần nói rõ ràng về cấu hình tập lệnh để cung cấp các đầu dò có sẵn trongkèo tỷ số bóng đá euro hôm nay.

Hiện tại, chỉ có tiện ích DTRACE được hỗ trợ, chỉ là Có sẵn trên Solaris Express và Solaris 10+. Nó được kỳ vọng rằng DTRACE sẽ có sẵn trong tương lai trên FreeBSD và Mac OS X. Hỗ trợ các tiện ích kèo tỷ số bóng đá euro hôm nay động khác là về mặt lý thuyết có thể bằng cách thay đổi các định nghĩa choPG_TRACEmacro trongsrc/bao gồm/pg_trace.h.

25.4.1. Biên dịch cho động Truy kèo tỷ số bóng đá euro hôm nay

Theo mặc định, các điểm kèo tỷ số bóng đá euro hôm nay bị vô hiệu hóa, vì vậy bạn sẽ cần phải Nói rõ ràng cho tập lệnh cấu hình để tạo các đầu dò Có sẵn trongkèo tỷ số bóng đá euro hôm nay. ĐẾN Bao gồm hỗ trợ DTRACE Chỉ định--Enable-dtraceĐể cấu hình. Nhìn thấyPhần 14,5Để biết thêm thông tin.

25.4.2. Tích hợp điểm kèo tỷ số bóng đá euro hôm nay

Một vài điểm kèo tỷ số bóng đá euro hôm nay tiêu chuẩn được cung cấp trong mã nguồn (Tất nhiên, nhiều hơn có thể được thêm vào khi cần thiết cho một vấn đề). Chúng được hiển thị trongBảng 25-3.

Bảng 25-3. Tích hợp điểm kèo tỷ số bóng đá euro hôm nay

tên tham số Tổng quan
Giao dịch (int TranstercentId) Bắt đầu một giao dịch mới.
Giao dịch__Commit (int TranstercentId) 12374_12419
Giao dịch__Abort 12512_12533 Việc hoàn thành giao dịch không thành công.
lwlock__acquire 12691_12715 Một lwlock đã được mua.
lwlock__Release (int Lockid, int Mode) LWLOCK đã được phát hành.
lwlock__startwait (int Lockid, int Mode) LWLOCK không có sẵn ngay lập tức và phụ trợ đã bắt đầu chờ khóa trở thành có sẵn.
lwlock__endwait (int Lockid, int Mode) Một phụ trợ đã được giải phóng khỏi sự chờ đợi của nó Lwlock.
lwlock__condacquire (int Lockid, int Mode) 13543_13630
lwlock__condacquire__fail (int Lockid, int mode) LWLOCK không có được thành công khi người gọi được chỉ định không chờ đợi.
Lock__StartWait (int locktag_field2, int lockmode) Yêu cầu khóa hạng nặng (khóa LMGR) bắt đầu chờ vì khóa không khả kèo tỷ số bóng đá euro hôm nay.
Lock__endwait (int locktag_field2, int lockmode) Yêu cầu khóa hạng nặng (khóa LMGR) Đã chờ hoàn thành (tức là, đã có được khóa).

25.4.3. Sử dụng điểm kèo tỷ số bóng đá euro hôm nay

Ví dụ dưới đây hiển thị tập lệnh DTRACE để phân tích giao dịch được tính vào hệ thống, như là một giải pháp thay thế cho Ảnh chụp nhanhpg_stat_databaseTrước và sau khi kiểm tra hiệu suất.

#!/Usr/sbin/dtrace -Qs 

kèo tỷ số bóng đá euro hôm nay $ 1 ::: Giao dịch-khởi đầu

      @Start ["Bắt ​​đầu"] = Count ();
      tự ts = dấu thời gian;

kèo tỷ số bóng đá euro hôm nay $ 1 ::: Trao đổi-Abort

      @abort ["ABORT"] = Count ();

kèo tỷ số bóng đá euro hôm nay $ 1 ::: Giao dịch-commit
/tự ts/

      @Commit ["cam kết"] = Count ();
      @time ["Tổng thời gian (ns)"] = sum (dấu thời gian - tự ts);
      tự ts = 0;

Lưu ý cách gạch chân kép trong tên điểm kèo tỷ số bóng đá euro hôm nay cần được thay thế bằng dấu gạch nối khi sử dụng tập lệnh d. Khi được thực hiện, Ví dụ d tập lệnh cho đầu ra như:

# ./txn_count.d `PGREP -N Postgres`
^C

Bắt đầu 71
Cam kết 70
Tổng thời gian (ns) 2312105013

Bạn nên nhớ rằng các chương trình theo dõi cần phải được cẩn thận được viết và gỡ lỗi trước khi sử dụng, nếu không thì dấu vết Thông tin được thu thập có thể là vô nghĩa. Trong hầu hết các trường hợp Các vấn đề được kèo tỷ số bóng đá euro hôm nay thấy, đây là thiết bị có lỗi, không phải là hệ thống cơ bản. Khi thảo luận về thông tin được kèo tỷ số bóng đá euro hôm nay thấy Sử dụng theo dõi động, hãy chắc chắn gửi lại tập lệnh được sử dụng để cho phép điều đó cũng được kiểm tra và thảo luận.

25.4.4. Xác định điểm kèo tỷ số bóng đá euro hôm nay

Điểm kèo tỷ số bóng đá euro hôm nay mới có thể được xác định trong mã bất cứ nơi nào mong muốn của nhà phát triển, mặc dù điều này sẽ yêu cầu một sự tái biên bản.

Một điểm theo dõi có thể được chèn bằng cách sử dụng một trong những dấu vết macro. Chúng được chọn theo số lượng biến sẽ được cung cấp để kiểm tra tại điểm theo dõi đó. Truy kèo tỷ số bóng đá euro hôm nay Sự xuất hiện của một sự kiện có thể đạt được với một dòng duy nhất, Chỉ sử dụng tên điểm theo dõi, ví dụ:

pg_trace (My__New__Trace__point);

Các điểm kèo tỷ số bóng đá euro hôm nay phức tạp hơn có thể được cung cấp với một hoặc nhiều các biến để kiểm tra bởi tiện ích kèo tỷ số bóng đá euro hôm nay động bởi Sử dụngPG_TRACEnMacro tương ứng với số lượng tham số sau tên điểm kèo tỷ số bóng đá euro hôm nay:

PG_TRACE3 (My__Complex__Event, Varx, Vary, Varz);

Định nghĩa của giao dịch lưu lượng kèo tỷ số bóng đá euro hôm nay cập là hiển thị bên dưới:

void tĩnh
StartTransaction (Void)

    ...

    /*
     * Tạo ID giao dịch mới
     */
    s- Giao dịchId = getNewTransactionId (false);

    Xactlocktableinsert (s- giao dịch);

    PG_TRACE1 (Giao dịch Start, S- TransformId);

    ...

17561_17644

tiện ích kèo tỷ số bóng đá euro hôm nay động có thể yêu cầu bạn tiếp tục Xác định các điểm kèo tỷ số bóng đá euro hôm nay này. Ví dụ, Dtrace yêu cầu bạn phải Thêm các đầu dò mới vào tệpSRC/Backend/Utils/Probes.DNhư được hiển thị ở đây:

Nhà cung cấp kèo tỷ số bóng đá euro hôm nay 
      ...
      Giao dịch thăm dò__Tart (int);
      ...
 ;

Bạn nên chăm sóc các loại dữ liệu được chỉ định cho Đối số thăm dò khớp với các kiểu dữ liệu của các biến được sử kèo tỷ số bóng đá euro hôm nay trong ThePG_TRACEMacro. Đây không phải là đã kiểm tra tại thời điểm biên dịch. Bạn có thể kiểm tra xem bạn mới được thêm vào dấu vết có sẵn bằng cách biên dịch lại, sau đó chạy cái mới nhị phân và dưới dạng root, thực hiện lệnh dtrace như:

DTRACE -L -N Giao dịch -Bắt đầu