~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to plugin/innobase/log/log0log.c

  • Committer: Lee Bieber
  • Date: 2010-12-23 23:11:00 UTC
  • mfrom: (2024.1.1 clean)
  • Revision ID: kalebral@gmail.com-20101223231100-0rqirgz7ugkl10yp
Merge Brian - session list cleanup

Show diffs side-by-side

added added

removed removed

Lines of Context:
328
328
        str_len -= len;
329
329
        str = str + len;
330
330
 
331
 
        log_block = static_cast<unsigned char *>(ut_align_down(log->buf + log->buf_free,
332
 
                                OS_FILE_LOG_BLOCK_SIZE));
 
331
        log_block = ut_align_down(log->buf + log->buf_free,
 
332
                                  OS_FILE_LOG_BLOCK_SIZE);
333
333
        log_block_set_data_len(log_block, data_len);
334
334
 
335
335
        if (data_len == OS_FILE_LOG_BLOCK_SIZE - LOG_BLOCK_TRL_SIZE) {
378
378
 
379
379
        lsn = log->lsn;
380
380
 
381
 
        log_block = static_cast<unsigned char *>(ut_align_down(log->buf + log->buf_free,
382
 
                                OS_FILE_LOG_BLOCK_SIZE));
 
381
        log_block = ut_align_down(log->buf + log->buf_free,
 
382
                                  OS_FILE_LOG_BLOCK_SIZE);
383
383
        first_rec_group = log_block_get_first_rec_group(log_block);
384
384
 
385
385
        if (first_rec_group == 0) {
766
766
log_init(void)
767
767
/*==========*/
768
768
{
769
 
        log_sys = static_cast<log_t *>(mem_alloc(sizeof(log_t)));
 
769
        log_sys = mem_alloc(sizeof(log_t));
770
770
 
771
771
        mutex_create(log_sys_mutex_key, &log_sys->mutex, SYNC_LOG);
772
772
 
784
784
        ut_a(LOG_BUFFER_SIZE >= 16 * OS_FILE_LOG_BLOCK_SIZE);
785
785
        ut_a(LOG_BUFFER_SIZE >= 4 * UNIV_PAGE_SIZE);
786
786
 
787
 
        log_sys->buf_ptr = static_cast<unsigned char *>(mem_alloc(LOG_BUFFER_SIZE + OS_FILE_LOG_BLOCK_SIZE));
788
 
        log_sys->buf = static_cast<unsigned char *>(ut_align(log_sys->buf_ptr, OS_FILE_LOG_BLOCK_SIZE));
 
787
        log_sys->buf_ptr = mem_alloc(LOG_BUFFER_SIZE + OS_FILE_LOG_BLOCK_SIZE);
 
788
        log_sys->buf = ut_align(log_sys->buf_ptr, OS_FILE_LOG_BLOCK_SIZE);
789
789
 
790
790
        log_sys->buf_size = LOG_BUFFER_SIZE;
791
791
 
831
831
        rw_lock_create(checkpoint_lock_key, &log_sys->checkpoint_lock,
832
832
                       SYNC_NO_ORDER_CHECK);
833
833
 
834
 
        log_sys->checkpoint_buf_ptr = static_cast<unsigned char *>(mem_alloc(2 * OS_FILE_LOG_BLOCK_SIZE));
835
 
        log_sys->checkpoint_buf = static_cast<unsigned char *>(ut_align(log_sys->checkpoint_buf_ptr,
836
 
                                OS_FILE_LOG_BLOCK_SIZE));
 
834
        log_sys->checkpoint_buf_ptr = mem_alloc(2 * OS_FILE_LOG_BLOCK_SIZE);
 
835
        log_sys->checkpoint_buf = ut_align(log_sys->checkpoint_buf_ptr,
 
836
                                           OS_FILE_LOG_BLOCK_SIZE);
837
837
        memset(log_sys->checkpoint_buf, '\0', OS_FILE_LOG_BLOCK_SIZE);
838
838
        /*----------------------------*/
839
839
 
895
895
        ulint   space_id,               /*!< in: space id of the file space
896
896
                                        which contains the log files of this
897
897
                                        group */
898
 
        ulint   /*archive_space_id __attribute__((unused))*/)
 
898
        ulint   archive_space_id __attribute__((unused)))
899
899
                                        /*!< in: space id of the file space
900
900
                                        which contains some archived log
901
901
                                        files for this group; currently, only
906
906
 
907
907
        log_group_t*    group;
908
908
 
909
 
        group = static_cast<log_group_t *>(mem_alloc(sizeof(log_group_t)));
 
909
        group = mem_alloc(sizeof(log_group_t));
910
910
 
911
911
        group->id = id;
912
912
        group->n_files = n_files;
917
917
        group->lsn_offset = LOG_FILE_HDR_SIZE;
918
918
        group->n_pending_writes = 0;
919
919
 
920
 
        group->file_header_bufs_ptr = static_cast<unsigned char **>(mem_alloc(sizeof(byte*) * n_files));
921
 
        group->file_header_bufs = static_cast<unsigned char **>(mem_alloc(sizeof(byte*) * n_files));
 
920
        group->file_header_bufs_ptr = mem_alloc(sizeof(byte*) * n_files);
 
921
        group->file_header_bufs = mem_alloc(sizeof(byte*) * n_files);
922
922
#ifdef UNIV_LOG_ARCHIVE
923
923
        group->archive_file_header_bufs_ptr = mem_alloc(
924
924
                sizeof(byte*) * n_files);
926
926
#endif /* UNIV_LOG_ARCHIVE */
927
927
 
928
928
        for (i = 0; i < n_files; i++) {
929
 
                group->file_header_bufs_ptr[i] = static_cast<unsigned char *>(mem_alloc(
930
 
                        LOG_FILE_HDR_SIZE + OS_FILE_LOG_BLOCK_SIZE));
 
929
                group->file_header_bufs_ptr[i] = mem_alloc(
 
930
                        LOG_FILE_HDR_SIZE + OS_FILE_LOG_BLOCK_SIZE);
931
931
 
932
 
                group->file_header_bufs[i] = static_cast<unsigned char *>(ut_align(
 
932
                group->file_header_bufs[i] = ut_align(
933
933
                        group->file_header_bufs_ptr[i],
934
 
                        OS_FILE_LOG_BLOCK_SIZE));
 
934
                        OS_FILE_LOG_BLOCK_SIZE);
935
935
 
936
936
                memset(*(group->file_header_bufs + i), '\0',
937
937
                       LOG_FILE_HDR_SIZE);
956
956
        group->archived_offset = 0;
957
957
#endif /* UNIV_LOG_ARCHIVE */
958
958
 
959
 
        group->checkpoint_buf_ptr = static_cast<unsigned char *>(mem_alloc(2 * OS_FILE_LOG_BLOCK_SIZE));
960
 
        group->checkpoint_buf = static_cast<unsigned char*>(ut_align(group->checkpoint_buf_ptr,
961
 
                                         OS_FILE_LOG_BLOCK_SIZE));
 
959
        group->checkpoint_buf_ptr = mem_alloc(2 * OS_FILE_LOG_BLOCK_SIZE);
 
960
        group->checkpoint_buf = ut_align(group->checkpoint_buf_ptr,
 
961
                                         OS_FILE_LOG_BLOCK_SIZE);
962
962
 
963
963
        memset(group->checkpoint_buf, '\0', OS_FILE_LOG_BLOCK_SIZE);
964
964
 
2072
2072
{
2073
2073
        /* Preflush pages synchronously */
2074
2074
 
2075
 
        while (!log_preflush_pool_modified_pages(lsn, TRUE)) {}
 
2075
        while (!log_preflush_pool_modified_pages(lsn, TRUE));
2076
2076
 
2077
 
        while (!log_checkpoint(TRUE, write_always)) {}
 
2077
        while (!log_checkpoint(TRUE, write_always));
2078
2078
}
2079
2079
 
2080
2080
/****************************************************************//**
2241
2241
log_archived_file_name_gen(
2242
2242
/*=======================*/
2243
2243
        char*   buf,    /*!< in: buffer where to write */
2244
 
        ulint   /*id __attribute__((unused))*/,
 
2244
        ulint   id __attribute__((unused)),
2245
2245
                        /*!< in: group id;
2246
2246
                        currently we only archive the first group */
2247
2247
        ulint   file_no)/*!< in: file number */