You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

5.1.0 버전에서 추가된 기능과 개선된 이슈를 정리한 릴리즈 노트입니다.

추가된 기능

중요한 순으로 기재합니다.

APPEND Tagdata : TAGNAME 이 저장되어 있지 않다면, 자동 생성

TAGDATA TABLE APPEND 할 때, TAGNAME 이 저장되어 있지 않은 경우에는 자동으로 TAGNAME 을 생성해서 Tag 데이터의 APPEND 를 속행할 수 있습니다.

이 값을 제어할 수 있는 Property 는 TAGDATA_AUTO_NAME_INSERT_IN_APPEND 이며, 기본값은 1 (켜짐) 입니다.

CREATE TAGDATA TABLE TAG (name VARCHAR(20) PRIMARY KEY, time DATETIME BASETIME, value DOUBLE SUMMARIZED);
INSERT INTO TAG METADATA VALUES ('TAG-A');


-- 아래 데이터를 APPEND 로 입력할 때엔, TAG-B 는 저장되어 있지 않지만 입력이 성공한다.
-- ('TAG-B', '2019-03-01 01:23:45', 36.5)

현재는 APPEND 에서만 지원되며, INSERT 는 추후 패치를 통해 지원될 예정입니다.


Disk Full 발생 시 알람 기능

마크베이스 서버가 위치한 디스크의 가용 공간의 일정 부분까지만 사용할 수 있습니다.

이 값을 제어할 수 있는 Property 는 DISK_USED_RATIO_CAP 이며, 기본값은 0 (무제한) 입니다.

  • 해당 Property 는, 디스크의 사용 공간 비율(%) 을 나타냅니다.
  • Property 값이 설정되어 있는 경우, 해당 비율까지 디스크가 사용된 경우 다음의 현상이 발생합니다. (이 디스크 사용은 마크베이스 서버의 사용과 무관할 수 있습니다.)
    • INSERT/APPEND 가 모두 실패하며, 디스크가 꽉 찼다는 에러 메시지를 반환합니다.
    • $MACHBASE_HOME/trc 의 machbase.trc 파일에, 디스크 사용량과 Property 값이 함께 출력됩니다.
    • $MACHBASE_HOME/trcalert.trc 가 생성되며, 해당 파일에는 디스크의 사용량과 Property 값이 함께 저장되어 있습니다.


INSERT INTO Tagdata : Bind Variable 지원

INSERT INTO 구문에 Bind Variable 을 사용해서 입력이 가능해졌습니다.

    char       tagnameData[20];
    SQLLEN     tagnameDataSize;

    // ...

    if (SQLPrepare(sStmt, 
                   (SQLCHAR *)"INSERT INTO TAG VALUES (?, '2010-01-01', 1.0)", 
                   SQL_NTS) == SQL_ERROR) 
    {
        printf("Prepare error\n");
    }

    if (SQLBindParameter(sStmt,
                         1,
                         SQL_PARAM_INPUT,
                         SQL_C_CHAR,
                         SQL_VARCHAR,
                         0,
                         0,
                         tagnameData,
                         0,
                         &tagnameDataSize) == SQL_ERROR)
    {
        printf("Bind error tag name");
    }

    // ...


Tag Analyzer : 고정 X축 간격 설정

Zoom 을 할 때 마다 X축의 간격이 자동으로 설정되었는데, 이를 고정할 수 있습니다.


DELETE Log :  DELETE 가 이미 진행 중인 경우 추가 DELETE 작동 중단

DELETE 구문이 여러 개 동시에 수행시켜도 순차적으로 진행되므로, 성능만 저하되고 아무런 효과가 없습니다.
따라서 동일한 테이블에 DELETE 가 이미 진행 중이라면 추가로 입력되는 DELETE 는 곧바로 에러 메시지를 반환합니다.



개선된 이슈

오래된 순으로 기재합니다.

  • LSM 인덱스를 사용한 Log Table SELECT 시, 인덱싱이 완료된 최근 레코드가 매우 낮은 확률로 조회되지 않는 문제가 해결되었습니다. (#1259)
  • Lookup Table 에서 DURATION 절을 사용하게 되면, 서버가 비정상종료되던 문제가 해결되었습니다. (#1271)
  • 서버로 ODBC 연결 실패 시, 에러 메시지가 출력되지 않아 정상 상황으로 보이던 문제가 해결되었습니다. (#1226)
  • 클라이언트가 비정상적인 프로토콜 메시지를 전송할 때, 서버의 에러 메시지가 Invalid protocol state. 만 나오던 문제가 해결되었습니다. (#1214)
    이제는 Invalid protocol state. Check your application again. (Protocol = OOO, Stmt State = OOO) 로 자세히 나오도록 했습니다.

잘 모르겠소요

  • #1193 : Coordinator 정보 날아가는 부분은.. 한번 뒤엎은거 같은데 확인이 필요하다.
  • No labels