关于Generating user instances in SQL Server is disabled. Use sp_configure 'user instances enabled' to generate user instances的错误

本文介绍了如何通过设置SQL Server配置来解决无法连接到服务器的问题。具体步骤包括启用用户实例、重新配置并重启服务。

今天调试程序的时候出现:


“Generating user instances in SQL Server is disabled. Use sp_configure 'user instances enabled' to generate user instances"这个错误.

 

后来我发现你在sql Server中在该数据库中用这条

 

exec sp_configure 'user instances enabled', 1


然后再运行

 

Reconfigure

然后重启SQL SERVER服务

就不会连不上服务器了.

 

转自:http://www.cnblogs.com/Crash123/archive/2007/09/18/896971.html

//----------------------------------------------------------------------------- // Includes //----------------------------------------------------------------------------- #include <SI_C8051F300_Register_Enums.h> #include <stdio.h> //----------------------------------------------------------------------------- // Global CONSTANTS //----------------------------------------------------------------------------- #define SYSCLK 24500000 // SYSCLK frequency in Hz #define BAUDRATE 115200 // Baud rate of UART in bps SI_SBIT(DE_RE, SFR_P0, 6); //定義P0.6 控制名稱為DE_RE SI_SBIT(LED2, SFR_P0, 1); //定義P0.1 控制名稱為LED2 SI_SBIT(LED1, SFR_P0, 0); //定義P0.0 控制名稱為LED1 SI_SBIT(LED3, SFR_P0, 2); //定義P0.2 控制名稱為LED3 SI_SBIT(LED4, SFR_P0, 3); //定義P0.3 控制名稱為LED4 SI_SBIT(LED5, SFR_P0, 7); //定義P0.7 控制名稱為LED5 //----------------------------------------------------------------------------- // Function PROTOTYPES //----------------------------------------------------------------------------- SI_INTERRUPT_PROTO(UART0_Interrupt, 4); void SYSCLK_Init (void); void UART0_Init (void); void PORT_Init (void); void Timer2_Init (int16_t); void MyDelay (uint16_t Value); #define KEY_DOWN 1 #define KEY_UP 0 #define LED_ON 0 #define LED_OFF 1 //----------------------------------------------------------------------------- // Global Variables //----------------------------------------------------------------------------- #define UART_BUFFERSIZE 6 uint8_t UART_Buffer[UART_BUFFERSIZE]; uint8_t UART_Buffer_Size = 0; uint8_t UART_Input_First = 0; uint8_t UART_Output_First = 0; uint8_t TX_Ready =1; uint8_t RX_Ready =0; static char Byte; uint8_t SnapDown_TimeCnt =0; uint8_t fSnap = 0; uint8_t RecDown_TimeCnt =0; uint8_t fRec = 0; //----------------------------------------------------------------------------- // SiLabs_Startup() Routine // ---------------------------------------------------------------------------- // This function is called immediately after reset, before the initialization // code is run in SILABS_STARTUP.A51 (which runs before main() ). This is a // useful place to disable the watchdog timer, which is enable by default // and may trigger before main() in some instances. //----------------------------------------------------------------------------- void SiLabs_Startup (void) { PCA0MD &= ~0x40; // WDTE = 0 (clear watchdog timer } //----------------------------------------------------------------------------- // MAIN Routine //----------------------------------------------------------------------------- void main (void) { // enable) PORT_Init(); // Initialize Port I/O SYSCLK_Init (); // Initialize Oscillator UART0_Init(); IE_EA = 1; DE_RE =0; Timer2_Init (SYSCLK / 12 / 1000); // Init Timer2 to generate // 每1ms 計時中斷 while(1) { if(RX_Ready) { RX_Ready = 0; UART_Buffer_Size =0; if(UART_Buffer[3]==0x01)//任一鍵按下 { if(UART_Buffer[4]==0x01)//REC { fRec = KEY_DOWN; RecDown_TimeCnt=0; } else if(UART_Buffer[4]==0x02)//SNAP { fSnap = KEY_DOWN; SnapDown_TimeCnt=0; } else if(UART_Buffer[4]==0x03)//LED UP LED3 = LED_ON; else if(UART_Buffer[4]==0x04)//LED DO LED4 = LED_ON; else if(UART_Buffer[4]==0x05)//Mirror LED5 = LED_ON; } if(UART_Buffer[3]==0x00)//任一鍵放開 { if(UART_Buffer[4]==0x01)//REC { fRec = KEY_UP; } else if(UART_Buffer[4]==0x02)//SNAP { fSnap = KEY_UP; } else if(UART_Buffer[4]==0x03)//LED UP LED3 = LED_OFF; else if(UART_Buffer[4]==0x04)//LED DO LED4 = LED_OFF; else if(UART_Buffer[4]==0x05)//Mirror LED5 = LED_OFF; } IE_ES0 =1; } if(SnapDown_TimeCnt >55 && fSnap == KEY_DOWN) { LED1 = LED_ON; } else if(SnapDown_TimeCnt >55 && fSnap == KEY_UP) { LED1 =LED_OFF; SnapDown_TimeCnt =0; } else if(SnapDown_TimeCnt >45 && SnapDown_TimeCnt <55 && fSnap == KEY_UP) { LED1 = LED_ON; LED2 = LED_ON; MyDelay(1100);//延遲約0.5秒 LED1 = LED_OFF; LED2 = LED_OFF; SnapDown_TimeCnt =0; } if(RecDown_TimeCnt >55 && fRec == KEY_DOWN) { LED2 = LED_ON; } else if(RecDown_TimeCnt >55 && fRec == KEY_UP) { LED2 = LED_OFF; RecDown_TimeCnt =0; } else if(RecDown_TimeCnt >45 && RecDown_TimeCnt <55 && fRec == KEY_UP) { LED4 = LED_ON; LED5 = LED_ON; MyDelay(1100);//延遲約0.5秒 LED4 = LED_OFF; LED5 = LED_OFF; RecDown_TimeCnt =0; } } } //----------------------------------------------------------------------------- // Initialization Subroutines //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- // PORT_Init //----------------------------------------------------------------------------- // // Return Value : None // Parameters : None // // Configure the Crossbar and GPIO ports. // // P0.4 digital push-pull UART TX // P0.5 digital open-drain UART RX // //----------------------------------------------------------------------------- void PORT_Init (void) { P0MDOUT |= 0x10; // set UART TX to push-pull output XBR1 = 0x03; // Enable UTX, URX as push-pull output XBR2 = 0x40; // Enable crossbar, weak pull-ups // disabled XBR0 = 0x40; P0MDOUT |= 0x40; } //----------------------------------------------------------------------------- // SYSCLK_Init //----------------------------------------------------------------------------- // // Return Value : None // Parameters : None // // This routine initializes the system clock to use the internal oscillator // at its maximum frequency. // Also enables the Missing Clock Detector. //----------------------------------------------------------------------------- void SYSCLK_Init (void) { OSCICN |= 0x03; // Configure internal oscillator for // its maximum frequency RSTSRC = 0x04; // Enable missing clock detector } //----------------------------------------------------------------------------- // UART0_Init //----------------------------------------------------------------------------- // // Return Value : None // Parameters : None // // Configure the UART0 using Timer1, for <BAUDRATE> and 8-N-1. //----------------------------------------------------------------------------- void UART0_Init (void) { SCON0 = 0x10; // SCON0: 8-bit variable bit rate // level of STOP bit is ignored // RX enabled // ninth bits are zeros // clear SCON0_RI and SCON0_TI bits if (SYSCLK/BAUDRATE/2/256 < 1) { TH1 = -(SYSCLK/BAUDRATE/2); CKCON |= 0x10; // T1M = 1; SCA1:0 = xx } else if (SYSCLK/BAUDRATE/2/256 < 4) { TH1 = -(SYSCLK/BAUDRATE/2/4); CKCON |= 0x01; // T1M = 0; SCA1:0 = 01 CKCON &= ~0x12; } else if (SYSCLK/BAUDRATE/2/256 < 12) { TH1 = -(SYSCLK/BAUDRATE/2/12); CKCON &= ~0x13; // T1M = 0; SCA1:0 = 00 } else { TH1 = -(SYSCLK/BAUDRATE/2/48); CKCON |= 0x02; // T1M = 0; SCA1:0 = 10 CKCON &= ~0x11; } TL1 = 0xff; // set Timer1 to overflow immediately TMOD |= 0x20; // TMOD: timer 1 in 8-bit autoreload TMOD &= ~0xD0; // mode TCON_TR1 = 1; // START Timer1 TX_Ready = 1; // Flag showing that UART can transmit IP |= 0x10; // Make UART high priority IE_ES0 = 1; // Enable UART0 interrupts } //----------------------------------------------------------------------------- // Interrupt Service Routines //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- // UART0_Interrupt //----------------------------------------------------------------------------- // // This routine is invoked whenever a character is entered or displayed on the // Hyperterminal. // //----------------------------------------------------------------------------- SI_INTERRUPT(UART0_Interrupt, 4) { if (SCON0_RI == 1) { if( UART_Buffer_Size == 0) { // If new word is entered UART_Input_First = 0; } SCON0_RI = 0; // Clear interrupt flag Byte = SBUF0; // Read a character from UART if (UART_Buffer_Size < UART_BUFFERSIZE) { UART_Buffer[UART_Input_First] = Byte; // Store in array UART_Buffer_Size++; // Update array's size UART_Input_First++; // Update counter } if(UART_Buffer_Size >= UART_BUFFERSIZE) { RX_Ready =1; UART_Buffer_Size =0; IE_ES0 = 0; } } if (SCON0_TI == 1) // Check if transmit flag is set { SCON0_TI = 0; // Clear interrupt flag if (UART_Buffer_Size != 1) // If buffer not empty { // If a new word is being output if ( UART_Buffer_Size == UART_Input_First ) { UART_Output_First = 0; } // Store a character in the variable byte Byte = UART_Buffer[UART_Output_First]; if ((Byte >= 0x61) && (Byte <= 0x7A)) { // If upper case letter Byte -= 32; } SBUF0 = Byte; // Transmit to Hyperterminal UART_Output_First++; // Update counter UART_Buffer_Size--; // Decrease array size } else { UART_Buffer_Size = 0; // Set the array size to 0 TX_Ready = 1; // Indicate transmission complete } } } //----------------------------------------------------------------------------- // Timer2_Init //----------------------------------------------------------------------------- // // Configure Timer2 to 16-bit auto-reload and generate an interrupt at // interval specified by <counts> using SYSCLK/12 as its time base. // void Timer2_Init (int16_t counts) { TMR2CN = 0x00; // Stop Timer2; Clear TF2; // use SYSCLK/12 as timebase CKCON &= ~(CKCON_T2MH__BMASK | CKCON_T2ML__BMASK ); // Timer2 clocked based on TMR2CN_T2XCLK TMR2RL = -counts; // Init reload values TMR2 = 0xffff; // set to reload immediately IE_ET2 = 1; // enable Timer2 interrupts TMR2CN_TR2 = 1; // start Timer2 } //----------------------------------------------------------------------------- // Timer2_ISR //----------------------------------------------------------------------------- // This routine changes the state of the LED whenever Timer2 overflows. // SI_INTERRUPT(Timer2_ISR, TIMER2_IRQn) { TMR2CN_TF2H = 0; // clear Timer2 interrupt flag if(fSnap == KEY_DOWN) { SnapDown_TimeCnt++; // change state of LED if(SnapDown_TimeCnt==255) SnapDown_TimeCnt = 254; } else if(fRec == KEY_DOWN) { RecDown_TimeCnt++; // change state of LED if(RecDown_TimeCnt==255) RecDown_TimeCnt = 254; } } void MyDelay(uint16_t Value) { uint16_t i,j; for(i=0;i<Value;i++) { for(j=0;j<1000;j++) _nop_(); } } //----------------------------------------------------------------------------- // End Of File //-----------------------------------------------------------------------------
07-04
复制下面的内容以代码形式输出给我 import time import uuid import json import os import traceback import sqlite3 from concurrent.futures import ThreadPoolExecutor from UTGen_server.model.api_task import ApiTask, BatchApiTask, UTTask, TaskStatus from UTGen_server.queue.gencase_queue import UTGENTASKQUEUE from UTGen_server.conf.setting import TESTCASE_FILE_NAME, setting from UTGen_server.model.llvm_task import LLVMTask from UTGen_server.model.prompt import SinglePrompt, AllPrompts from UTGen_server.model.branch_design import BranchCoverDesign from UTGen_server.utils.utils import seg_prompt, testcase_post_processing, read_file, read_json from UTGen_server.workers.gen_branch_design import gen_branch_design from UTGen_server.workers.gen_prompt import gen_prompt from UTGen_server.workers.gen_case_by_llvm import llm_request_router, LlmRequest, qwen_chat_request from UTGen_server.workers.compile_case import CompileProcessor from UTGen_server.log.logs import logger, prompt_logger, case_logger, logger_path from UTGen_server.track.code_tracker import track_workflow setting.reload() @track_workflow() def get_testcase(request: LlmRequest, i: int, **kwargs): begin = time.time() router_ = f'{request.model}-{request.mode}' test_string = json.loads(llm_request_router.get(router_, qwen_chat_request)(request)) case_logger.info(f'第{i + 1}个用例的模型返回结果:\n{test_string}') try: if request.mode == 'completion': answer = test_string['choices'][0]['text'] else: answer = test_string['choices'][0]['message']['content'] times = time.time() - begin logger.info(f'已生成第{i + 1}个用例,用时:{times: .3f}s') return answer except Exception as e: logger.error(f"errormsg: {str(e)}\n{traceback.format_exc()}") return '' def get_api_list_by_file(db_dir, apilist): try: symboldb = os.path.join(db_dir, "symbol.db") utgendb = os.path.join(db_dir, "utgen.db") apilite_new = [] def get_funclist_by_db(dbpath): sc = sqlite3.connect(dbpath) sc_cursor = sc.cursor() sc_cursor.execute(sql) results = sc_cursor.fetchall() sc.close() if results: for result in results: apilite_new.append(result[0]) for api in apilist: if api.endswith(".h"): sql = f'SELECT name from symbols where kind=12 AND DeclarationFileURI like "%{os.path.basename(api)}"' get_funclist_by_db(symboldb) elif api.endswith(".c"): sql = f'SELECT name from func_jsons where file like "%{os.path.basename(api)}"' get_funclist_by_db(utgendb) else: apilite_new.append(api) except Exception as e: logger.error(e) return apilist return apilite_new class GenTestCase: is_generating_llvm_task = False is_generating_gencase_task = False @staticmethod def background_mode(apitask: ApiTask): ret = "success" if not apitask.constraint.db_dir_path: apitask.constraint.db_dir_path = os.path.dirname(apitask.constraint.ccjson) taskid = str(uuid.uuid4()).replace('-', '')[:32] try: UTGENTASKQUEUE.add_task(apitask.model_dump_json(), taskid) except Exception as error: ret = "failed" UTGENTASKQUEUE.update_api_tasks_err_message(taskid, error) logger.error(f"errormsg: {str(error)}\n{traceback.format_exc()}") return ret def background_mode_return_id(apitask: ApiTask): ret = "" if not apitask.constraint.db_dir_path: apitask.constraint.db_dir_path = os.path.dirname(apitask.constraint.ccjson) taskid = str(uuid.uuid4()).replace('-', '')[:32] ret = taskid try: apitask.testcase_file_path = os.path.join( apitask.testcase_file_path, TESTCASE_FILE_NAME.format(apitask.api_name) ) UTGENTASKQUEUE.add_task(apitask.model_dump_json(), taskid) except Exception as error: UTGENTASKQUEUE.update_api_tasks_err_message(taskid, error) logger.error(f"errormsg: {str(error)}\n{traceback.format_exc()}") return ret @staticmethod def batch_background_mode(batch_api_task: BatchApiTask): ret = {"msg": "success", "log_path": logger_path} taskid = str(uuid.uuid4()).replace('-', '')[:32] try: if not batch_api_task.constraint.db_dir_path: batch_api_task.constraint.db_dir_path = os.path.dirname(batch_api_task.constraint.ccjson) # 处理.c文件和.h文件中包含的函数列表信息 batch_api_task.api_name_list = get_api_list_by_file( batch_api_task.constraint.db_dir_path, batch_api_task.api_name_list ) for api_name in batch_api_task.api_name_list: # 获取生成用例文件路径,并处理用例文件命名格式 case_name = api_name for suffix in [".cpp", ".cc", ".c"]: case_name = case_name.replace(suffix, "") case_name = case_name.replace("::", "_").replace(" : ", "_") test_case_file_path = os.path.join( batch_api_task.testcase_output_dir, TESTCASE_FILE_NAME.format(case_name.lower()) ) api_task = ApiTask( user_name=batch_api_task.user_name, api_name=api_name, is_cpp=batch_api_task.is_cpp, constraint=batch_api_task.constraint, testcase_file_path=test_case_file_path ) UTGENTASKQUEUE.add_task(api_task.model_dump_json(), taskid) except Exception as error: ret = "failed" UTGENTASKQUEUE.update_api_tasks_err_message(taskid, error) logger.error(f"errormsg: {str(error)}\n{traceback.format_exc()}") return json.dumps(ret) @staticmethod def ut_gen_prompt(ut_task: UTTask): logger.info('正在生成提示词...') begin = time.time() analysis_output = gen_branch_design(ut_task) branch_design = BranchCoverDesign( output_path=analysis_output[0], branch_analysis=analysis_output[1], code_analysis=analysis_output[2], includes=analysis_output[3] ) prompt_list = gen_prompt(branch_design) output = [] branches = read_json(branch_design.branch_analysis) for i, testcase in enumerate(prompt_list): sign = str(uuid.uuid4()).replace('-', '')[:32] prompt = {} prompt['example'] = testcase.get('comment_macro', '') prompt['uuid'] = sign prompt['prompt'] = testcase.get('prompt', '') output.append(prompt) # 写高亮文件 try: highlight = read_json(ut_task.constraint.high_light_path) except (FileNotFoundError, json.JSONDecodeError): highlight = {} highlight[sign] = branches[i].get("line_cover", '').copy() for _ in highlight[sign]: _["functionName"] = _.pop("function_name") _["path"] = _.pop("file_path") with open(ut_task.constraint.high_light_path, 'w') as f: json.dump(highlight, f, indent=2) times = time.time() - begin logger.info(f'已生成提示词,用时:{times: .3f}s') return output @staticmethod def ut_gencase_for_single_branch(single_prompt: SinglePrompt, model=setting.model, mode=setting.mode): user_name = single_prompt.user_name prompt = single_prompt.prompt sign = single_prompt.uuid prompt_logger.info(prompt) llm_request = LlmRequest( user_id=user_name, prompt=prompt, model=model, mode=mode, additional_args={'max_tokens': 2048} ) logger.info('正在生成分支用例... ') begin = time.time() full_sign = f'// UTGen生成测试用例唯一标识符: ' + sign + '\n' testcase = get_testcase(request=llm_request, i=0, session_id=sign) answer = testcase_post_processing(testcase) output = {'result': answer} times = time.time() - begin logger.info(f'已生成分支用例,用时:{times: .3f}s') return output @staticmethod def ut_gencase_for_all_branches(all_prompts: AllPrompts, model=setting.model, mode=setting.mode): user_name = all_prompts.user_name prompt_list = [_.prompt for _ in all_prompts.prompt_list] sign_list = [_.uuid for _ in all_prompts.prompt_list] with ThreadPoolExecutor(max_workers=3) as t: answer_list = [] for i, prompt in enumerate(prompt_list): llm_request = LlmRequest( user_id=user_name, prompt=prompt, model=model, mode=mode, additional_args={'max_tokens': 2048} ) prompt_logger.info(prompt) kwargs = { 'request': llm_request, 'i': i, 'session_id': sign_list[i] } future = t.submit(get_testcase, **kwargs) answer_list.append((future, i)) output = [{'data': '', 'uuid': ''} for _ in range(len(prompt_list))] for future, index in answer_list: output[index]['data'] = testcase_post_processing(future.result()) output[index]['uuid'] = sign_list[index] logger.info(f'已生成全部分支用例') return {'result': output} @staticmethod def start_gen_gencase_task(): seq_id, llvm_task, api_task_id = UTGENTASKQUEUE.get_llvm_pending_task() try: if not seq_id and GenTestCase.is_generating_gencase_task: logger.info("生成用例任务执行完成") logger.info('#所有任务执行完成#') GenTestCase.is_generating_gencase_task = False if not seq_id: return GenTestCase.is_generating_gencase_task = True UTGENTASKQUEUE.update_llvm_task_status(seq_id, TaskStatus.pending_case) UTGENTASKQUEUE.update_task_status(api_task_id, TaskStatus.pending_case) current_api_task = UTGENTASKQUEUE.get_task_by_id(api_task_id) if not current_api_task: return compile_task = CompileProcessor(llvm_task=llvm_task, api_task=current_api_task) compile_task.pre_writing() compile_task.run() logger.info(f'{current_api_task.api_name}用例写入完毕') UTGENTASKQUEUE.update_llvm_task_status(seq_id, TaskStatus.end) UTGENTASKQUEUE.update_task_status(api_task_id, TaskStatus.end) except KeyboardInterrupt: logger.info('用户中断执行') except Exception as e: UTGENTASKQUEUE.update_api_tasks_err_message(api_task_id, e) UTGENTASKQUEUE.update_llvm_task_status(seq_id, TaskStatus.end) UTGENTASKQUEUE.update_task_status(api_task_id, TaskStatus.end) logger.error(f'生成用例失败: {str(e)}\n{traceback.format_exc()}') @staticmethod def start_gen_llvm_task(): api_task_id, apitask, taskid = UTGENTASKQUEUE.get_pending_task() try: if not apitask and GenTestCase.is_generating_llvm_task: if GenTestCase.is_generating_gencase_task: GenTestCase.is_generating_gencase_task = False logger.info('生成llvm任务完成') else: logger.info('生成llvm任务完成') logger.info('#所有任务执行完成#') if apitask: GenTestCase.is_generating_llvm_task = True UTGENTASKQUEUE.update_task_status(api_task_id, TaskStatus.pending_prompt) # 生成代码解析文件 analysis_output = gen_branch_design(apitask) branch_design = BranchCoverDesign( output_path=analysis_output[0], branch_analysis=analysis_output[1], code_analysis=analysis_output[2], includes=analysis_output[3] ) # 调用prompt生成 prompt_list = gen_prompt(branch_design) llvmtask = LLVMTask( user_name=apitask.user_name, prompt_list=prompt_list, task_id=taskid, apitask_id=api_task_id, includes=branch_design.includes, branch_analysis=branch_design.branch_analysis ) # 送入llvm队列 GenTestCase.is_generating_gencase_task = True UTGENTASKQUEUE.add_llvm_task(json.dumps(llvmtask.model_dump(), indent=4), api_task_id) UTGENTASKQUEUE.update_task_status(api_task_id, TaskStatus.pending_llvm) else: GenTestCase.is_generating_llvm_task = False except KeyboardInterrupt: logger.info('用户中断执行') except Exception as e: UTGENTASKQUEUE.update_api_tasks_err_message(api_task_id, e) UTGENTASKQUEUE.update_task_status(api_task_id, TaskStatus.end) logger.error(f'添加任务失败:{str(e)}\n{traceback.format_exc()}')
最新发布
08-15
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值